문자열과 다른 형식 사이의 변환(Visual Basic)
숫자, Boolean
또는 날짜/시간 값을 String
로 변환할 수 있습니다. 문자열의 내용을 대상 데이터 형식의 유효한 값으로 해석할 수 있는 경우 문자열 값에서 숫자, Boolean
또는 Date
로 또는 역방향으로 변환할 수도 있습니다. 그러지 않으면 런타임 오류가 발생합니다.
이러한 모든 할당에 대한 변환은 어느 방향으로든 축소 변환입니다. 형식 변환 키워드(CBool
, CByte
, CDate
, CDbl
, CDec
, CInt
, CLng
, CSByte
, CShort
, CSng
, CStr
, CUInt
, CULng
, CUShort
, CType
)를 사용해야 합니다. Format 및 Val 함수를 사용하면 문자열과 숫자 간의 변환을 추가로 제어할 수 있습니다.
클래스 또는 구조체를 정의한 경우 String
과 클래스 또는 구조체의 형식 간에 형식 변환 연산자를 정의할 수 있습니다. 자세한 내용은 How to: Define a Conversion Operator을 참조하세요.
숫자를 문자열로 변환
Format
함수를 사용하여 숫자를 형식이 지정된 문자열로 변환할 수 있습니다. 여기에는 적절한 숫자뿐만 아니라 통화 기호(예 $
), 천 단위 구분 기호 또는 숫자 그룹화 기호(예: ,
), 소수 구분 기호(예: .
)와 같은 서식 기호도 포함될 수 있습니다. Format
는 Windows 제어판에 지정된 제어판 에 지정된 설정에 국가별 옵션에 따라 적절한 기호를 자동으로 사용합니다.
다음 예제와 같이 연결(&
) 연산자는 숫자를 암시적으로 문자열로 변환할 수 있습니다.
' The following statement converts count to a String value.
Str = "The total count is " & count
문자열을 숫자로 변환
Val
함수를 사용하여 문자열의 숫자를 숫자로 명시적으로 변환할 수 있습니다. Val
는 숫자, 공백, 탭, 줄 바꿈, 마침표 이외의 문자가 나타날 때까지 문자열을 읽습니다. 시퀀스 “&O” 및 “&H”는 숫자 시스템의 기반을 변경하고 검사를 종료합니다. 읽기가 중지될 때까지 Val
은 모든 적절한 문자를 숫자 값으로 변환합니다. 예를 들어 다음 문은 141.825
값을 반환합니다.
Val(" 14 1.825 miles")
Visual Basic은 문자열을 숫자 값으로 변환할 때 Windows 제어판에 지정된 국가별 옵션 설정을 사용하여 천 단위 구분 기호, 소수 구분 기호, 통화 기호를 해석합니다. 즉, 변환은 어떤 설정에서 성공할 수 있지만 다른 설정에서는 성공하지 못할 수도 있습니다. 예를 들어 "$14.20"
는 영어(미국) 로캘에서는 허용되지만 프랑스어 로캘에서는 허용되지 않습니다.
참고 항목
.NET