다음을 통해 공유


문자열과 다른 형식 간의 변환(Visual Basic)

숫자, Boolean 또는 날짜/시간 값을 String로 변환할 수 있습니다. 문자열의 내용을 대상 데이터 형식의 유효한 값으로 해석할 수 있는 경우 문자열 값에서 숫자 BooleanDate 로 또는 역방향으로 변환할 수도 있습니다. 그렇지 않으면 런타임 오류가 발생합니다.

이러한 모든 할당에 대한 변환은 어느 방향으로든 축소 변환입니다. 형식 변환 키워드(CBool, , CByte, CDate, CDbl, CDecCInt, CLng, CSByteCShort, CSng, CStr, CUIntCULngCUShortCType)를 사용해야 합니다. FormatVal 함수를 사용하면 문자열과 숫자 간의 변환을 추가로 제어할 수 있습니다.

클래스 또는 구조를 정의한 경우 클래스 또는 구조체의 형식 간에 String 형식 변환 연산자를 정의할 수 있습니다. 자세한 내용은 방법: 변환 연산자 정의를 참조하세요.

숫자를 문자열로 변환

함수를 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" (미국) 로캘에서는 허용되지만 프랑스어 로캘에서는 허용되지 않습니다.

참고하십시오