VB.NET 2008/VB - 문자열

문자열 - 문자열과 다른 데이터 형식 사이의 변환

본클라쓰 2011. 4. 8. 09:27

 

바이트 배열을 문자열로 변환

 

Encoding.Unicode 인코딩 클래스의 GetString 메서드를 사용하여 바이트 배열의 모든 바이트를 문자열로 변환합니다.

 

Dim aString As String = System.Text.Encoding.Unicode.GetString(bytes)

 

 

다음과 같은 몇 가지 인코딩 옵션을 사용하여 바이트 배열을 문자열로 변환할 수 있습니다.

 

 · Encoding.ASCII : ASCII 문자 집합에 대한 인코딩을 가져옵니다.

 · Encoding.BigEndianUnicode : Big-Endian 바이트 순서를 사용하는 UTF-16 형식에 대한 인코딩을 가져옵니다.

 · Encoding.Default : 시스템의 현재 ANSI 코드 페이지에 대한 인코딩을 가져옵니다.

 · Encoding.Unicode : little-endian 바이트 순서를 사용하는 UTF-16 형식에 대한 인코딩을 가져옵니다.

 · Encoding.UTF32 : little-endian 바이트 순서를 사용하는 UTF-32 형식에 대한 인코딩을 가져옵니다.

 · Encoding.UTF7 : UTF-7 형식에 대한 인코딩을 가져옵니다.

 · Encoding.UTF8 : UTF-8 형식에 대한 인코딩을 가져옵니다.

 

 

 

문자열을 바이트 배열로 변환

 

Encoding.Unicode 인코딩 클래스의 GetBytes 메서드를 사용하여 문자열을 바이트 배열로 변환합니다.

 

Dim bytes As Byte() = System.Text.Encoding.Unicode.GetBytes(str)

·

 

이때 바이트 배열을 문자열로 변환할 때 사용하는 인코딩 옵션과 비슷한 인코딩 옵션을 사용하여 변환할 수 있습니다.

 

 

 

Char 값으로 이루어진 배열로 문자열 만들기

 

String 개체를 생성할 때 생성 인자로 char 배열을 전달할 수 있습니다. 개별 문자로부터 "abcd"라는 문자열을 만들 때는 다음과 같습니다.

 

Dim characters() As Char = {"a"c, "b"c, "c"c, "d"c}

Dim str As New String(characters)

 

 

 

16진수 문자열을 숫자로 변환

 

ToInt32 메서드를 사용하여 16진수로 표시된 숫자를 정수로 변환합니다. ToInt32 메서드의 첫 번재 인수는 변환할 문자열입니다. 두 번째 인수는 숫자의 기수를 나타냅니다. 16진수의 기수는 16입니다.

 

Dim i As Integer = Convert.ToInt32("c001", 16)

 

 

 

문자열을 문자 배열로 변환

 

문자열을 구문 분석할 때처럼 문자열 내의 문자 관련 데이터 및 문자열 내에서 해당 문자의 위치를 알고 있으면 유용할 때가 있습니다. 문자열의 ToCharArray 메서드를 호출하여 문자열에서 문자 배열을 가져오는 방법입니다.

 

Dim aString As String = "ABC"

Dim charArray() As Char = aString.ToCharArray

 

 

 

문자열 안의 문자에 액세스

 

문자열 내의 문자 관련 데이터 및 문자열 내에서 해당 문자의 위치를 알고 있으면 유용할 때가 있습니다. 문자열은 문자의 배열로 간주할 수 있으며 Chars 속성을 사용하여 해당 문자의 인덱스를 참조하면 특정 문자를 검색할 수 있습니다.

 

Dim aString As String = "ABCDE"

Dim myChar As Char

myChar = aString.Chars(3)

 

 

 

자료 출처) http://msdn.microsoft.com/ko-kr/library/hzcd8ze0

 

 

 

 

 

 

 

 

 

 

숫자를 문자열로 변환할 때는

 

Str(150)

 

문자열을 숫자로 변환할 때는

 

Val("150")

 

 

문자열인지 숫자인지 판단해주는 함수는 IsNumeric 함수로 문자열인 경우 false, 숫자인 경우 true를 반환한다.

 

IsNumeric(str)

 

 

 

문자열을 대문자 또는 소문자로 변환할 때는

 

UCase(str)

LCase(str)

 

 

문자열의 좌우 공백을 제거할 때는

 

Trim(str)

 

 

등이 있다.

 

 

문자열을 Date 형식으로 변환할 때는

 

Dim t As String = "2011-01-01"
Dim d As Date = CDate(t)
Console.WriteLine(d.ToString)