vb6.0/vba [vb6.0/vba] "ADODB.Stream"을 이용한 UTF-8 encoding
페이지 정보
본문
Public Function UTF8(StringVal As String, Optional SpaceAsPlus As Boolean = True) As String
Dim bytes() As Byte, b As Byte, i As Integer, space As String
If SpaceAsPlus Then space = "+" Else space = "%20"
If Len(StringVal) > 0 Then
With CreateObject("ADODB.Stream")
.Mode = 3 '// adModeReadWrite
.Type = 2 '// adTypeText
.Charset = "UTF-8"
.Open
.WriteText StringVal
.Position = 0
.Type = 1 '// adTypeBinary
.Position = 3 ' skip BOM
bytes = .Read
End With
ReDim result(UBound(bytes)) As String
For i = UBound(bytes) To 0 Step -1
b = bytes(i)
Select Case b
Case 97 To 122, 65 To 90, 48 To 57, 45, 46, 95, 126
result(i) = Chr(b)
Case 32
result(i) = space
Case 0 To 15
result(i) = "%0" & Hex(b)
Case Else
result(i) = "%" & Hex(b)
End Select
Next i
- 이전글[vba] 품목 사진 리스트 / 사진대지 / 쇼핑몰 사진대지 / 쇼핑몰 품목 사진 관리대장 20.02.13
- 다음글[vb6.0/vba] [펌] Convert ASCII to UTF-8 20.02.12
댓글목록
등록된 댓글이 없습니다.