vb6中TXT文档编码转换源代码求助 100

我现在想把TXT文档中最常见的ANSI编码转换成UNIcode,代码如何写?比如我现在有个TEXT文档,读起来,然后保存成Unicode2.txt如何做?完整的格式好么?... 我现在想把TXT文档中最常见的ANSI编码转换成UNIcode,代码如何写?

比如我现在有个TEXT文档,读起来,然后保存成Unicode2.txt

如何做?
完整的格式好么?
最好把全部的源文件复制给我好么?
展开
 我来答
百度网友ae3233c
2007-01-21 · TA获得超过1175个赞
知道小有建树答主
回答量:1329
采纳率:0%
帮助的人:465万
展开全部
StrConv 函数

语法为:StrConv(待转换字串, 转换格式)

转换格式:

vbUnicode 将 Ansi 字串转换为 Unicode

vbFromUnicode 将 Unicode 字串转换为 Ansi

====================

补充回答:

看看下面的基本范例您应该就会对 VB 的字串处理方式有些概念。

Private Sub Command1_Click ()

Dim sUnicode As String

Dim sAnsi As String

' Unicode 运算

sUnicode = "王小明,A123456789,651023,上海市中山路100号,(02)2345678"

Debug.Print Len(sUnicode) ' 返回 44

Debug.Print Mid$(sUnicode, 5, 10) ' 返回 A123456789

Debug.Print Instr(sUnicode, "上海市") ' 返回 23

' 将 Unicode 字串转成 Ansi

sAnsi = StrConv(sUnicode, vbFromUnicode)

' Ansi 运算

Debug.Print LenB(sAnsi) ' 返回 54

Debug.Print MidB$(sAnsi, 8, 10) ' 返回 ?????,因为忘了转回 Unicode

Debug.Print StrConv(MidB$(sAnsi, 8, 10), vbUnicode) ' 返回 A123456789,请注意转
回 Unicode 的动作一定要做

Debug.Print InStrB(sAnsi, StrConv("上海市", vbFromUnicode)) ' 返回 23, 不要忘了
要把"上海市"也转成 Ansi,否则会找不到

End Sub

================

读入文本文件

在 VB 的小技巧中,有一个是快速读文件法:

Private Sub Command1_Click ()

Dim sFile As String

Open "C:filename.txt" For Input As #1

sFile = Input$(LOF(1), #1)

Close #1

End Sub

但是很不幸地,如果你读取的文件内含中文字,那上面这段程序会出现 Input pastend of
file 的错误。因为 LOF 返回的是文件的 byte 数,而 Input 函数读取的是字符数,由于
文件内含中文,因此文件中的字符数将会小于 byte 数,于是就发生错误了。

要解决这个问题,我们就要用到 StrConv 和 InputB 这两个函数了:

Private Sub Command1_Click ()

Dim sFile As String

Open "C:filename.txt" For Input As #1

sFile = StrConv(InputB$(LOF(1), #1), vbUnicode)

Close #1

End Sub

上面修正程序先用 InputB 将文件读进来,不过使用 InputB 所读入的文件是 Ansi格式的,
所以要再用 StrConv 转成 Unicode 才行。

================

VB我不是太熟 这些是COPY了人家的 有这些例子应该够帮到你了 如果这样还不够 那你其实应该去找本VB的教材好好看看了

忘了哪位老外大牛说过 程序就是"算法 + 字符串处理"

字符串的处理是每门语言最基本的 不要疏忽大意

参考资料: http://post.baidu.com/f?kz=75346031

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式