¡Hola! nº 是西班牙文
¡Hola! nº 保存成.txt 编码为unicode ,测试以下代码 ,显示 还是不正确! Dim textBytes() As Byte, headBytes(2) As Byte
fn = App.Path & "\test.txt"
If Dir(fn) = "" Then
MsgBox "文件不存在,请先单击【写入】按钮生成“MyUnicode.txt”文件。", vbInformation
Exit Sub
End If
Open fn For Binary As #1
Get #1, , headBytes() '读取文件头。
Close #1
If headBytes(0) = 255 And headBytes(1) = 254 Then '是Unicode编码。十六进制为:FF 、FE。
Open fn For Binary As #1
ReDim textBytes(LOF(1) - 2) '减去文件头占用的2个字节。
Get #1, 3, textBytes() '第三个字节起为文本内容。
Close #1
Text1.Text = textBytes() '在 VB 中字符串是 UniCode 格式,所以Unicode码直接赋值即可显示文本内容。
RichTextBox1.Text = textBytes()
Else
MsgBox "非Unicode编码,不予读入,请单击【写入】按钮。", vbInformation
End If
¡Hola! nº 保存成.txt 编码为unicode ,测试以下代码 ,显示 还是不正确! Dim textBytes() As Byte, headBytes(2) As Byte
fn = App.Path & "\test.txt"
If Dir(fn) = "" Then
MsgBox "文件不存在,请先单击【写入】按钮生成“MyUnicode.txt”文件。", vbInformation
Exit Sub
End If
Open fn For Binary As #1
Get #1, , headBytes() '读取文件头。
Close #1
If headBytes(0) = 255 And headBytes(1) = 254 Then '是Unicode编码。十六进制为:FF 、FE。
Open fn For Binary As #1
ReDim textBytes(LOF(1) - 2) '减去文件头占用的2个字节。
Get #1, 3, textBytes() '第三个字节起为文本内容。
Close #1
Text1.Text = textBytes() '在 VB 中字符串是 UniCode 格式,所以Unicode码直接赋值即可显示文本内容。
RichTextBox1.Text = textBytes()
Else
MsgBox "非Unicode编码,不予读入,请单击【写入】按钮。", vbInformation
End If
解决方案 »
- windows server 2008 安装 Crystal report 10 服务器不成功,缺少Ntlmssp服务
- VB *.ini配置文件连接数据库!
- 大家好 有关instr的问题 我实在是不明白
- 关于如何用vb 调用accsee 中的数据问题 (很急)
- 关于VB运行库的问题?
- vb打印窗体的问题
- 我想要的是类似与网上邻居的东西,能够列出当前网络所有的域/工作组和其下的计算机名
- 请问可以在mshflexgrid控件的表格中之间更新数据库的数据吗?
- 一个窗体需要另一个窗体的数据才能继续运行,该怎么解决?
- 在VB中打开一个数据库后,如何获得该数据库中所有的表的名字??
- VB或VBA中使用API动态生成树控件
- 如何用GDI让一个矩形转动一定角度,要求一边靠边左上角呈45度
Get #1, 3, textBytes() '第三个字节起为文本内容。
纠正一下,后来验证了,3确实是第3个字节。
你这非GBK字符,不能在VB6及其自带的ANSI版控件中正常显示就很正常了。估计你用的WINDOWS也是中文系统。觉得楼主应该会VB.NET吧,你以后以UNICODE为重要内容的程序,直接用VB.NET写就是了