查看: 460  |  回复: 0
  VB6 的StrConv常数
楼主
发表于 2024年12月7日 16:27
Constant描述
vbUpperCase1将字符串转换成大写字符。
vbLowerCase2将字符串转换成小写字符。
vbProperCase3将字符串中每个词的第一个字母转换成大写。
vbWide4将字符串中的窄(单字节)字符转换为宽(双字节)字符。 适用于东亚区域设置。
vbNarrow8将字符串中的宽(双字节)字符转换成窄(单字节)字符。 适用于东亚区域设置。
vbKatakana16将字符串中的 Hiragana 字符转换成 Katakana 字符;只适用于日文地区。
vbHiragana32将字符串中的 Katakana 字符转换成 Hiragana 字符;只适用于日文地区。
vbUnicode64

利用缺省的系统代码页将字符串转换成 Unicode (在Macintosh 中不可用)。

将 Ansi 字串转换为 Unicode。

vbFromUnicode128

将字符串由 Unicode 转换成缺省的系统代码页 (在Macintosh 中不可用)。

将 Unicode 字串转换为 Ansi。

新建From1(窗体),新建Text1(TextBox,MultiLine选True,ScrollBars选3),Command1-3(按钮CommandButton),代码:

Private Const strLine$ = "a" & vbCr & "b" & vbLf & "c" & vbCrLf & "d"

Private Sub Command1_Click()
    Dim intFileNum%: intFileNum = FreeFile

    Open App.Path & "\a.txt" For Output As #intFileNum
        Print #intFileNum, strLine
    Close #intFileNum
End Sub

Private Sub Command2_Click()
    Dim intFileNum%: intFileNum = FreeFile

    Open App.Path & "\b.txt" For Output As #intFileNum
        Print #intFileNum, StrConv(strLine, vbUnicode)
    Close #intFileNum
End Sub

Private Sub Command3_Click()
    Debug.Print strLine
    Text1.Text = strLine
End Sub

按Command1到3后,运行ShowByte软件后可以看到a.txt:

61 0D 62 0A 63 0D 0A 64 0D 0A

运行后可以看到b.txt:

61 00 0D 00 62 00 0A 00 63 00 0D 00 0A 00 64 00 
0D 0A

可见,最后的 0D 0A 是自动写入的。

立即窗口显示:

a
b
c
d

看来VB6IDE的立即窗口对vbCr和vbLf还有vbCrLf是一样看待的。但是,在Text中却显示:

abc
d

用CreateObject(ADODB.Stream) 来写UTF-8等,可以参考:http://manongku.com/p4953534.html


您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2026 MaNongKu.com