Office中国论坛/Access中国论坛

标题: 求助:如何用vba把文本文件UTF-8 编码转换为 ANSI [打印本页]

作者: yaozi    时间: 2012-12-21 10:32
标题: 求助:如何用vba把文本文件UTF-8 编码转换为 ANSI
如题,如何用vba把文本文件UTF-8 编码转换为 ANSI

作者: yaozi    时间: 2012-12-21 16:44
经过不懈的努力搜索网页,已解决{:soso_e113:}
作者: access新闻爱好者    时间: 2012-12-21 17:05
yaozi 发表于 2012-12-21 16:44
经过不懈的努力搜索网页,已解决

解决了,就把答案贴上来吧,供其他人学习学习。谢谢了!!
作者: huangli0356    时间: 2012-12-21 17:10
LZ应该是调用外部程序来完成这个功能的吧?

作者: yaozi    时间: 2012-12-22 09:13
access新闻爱好者 发表于 2012-12-21 17:05
解决了,就把答案贴上来吧,供其他人学习学习。谢谢了!!

Private Sub Command1_Click()
Dim objFile, stmFile
Dim strText As String
Set objFile = CreateObject("Scripting.FileSystemObject")
Set stmFile = objFile.OpenTextFile("f:\temp.txt", 1, False) 'temp.txt 文本编码utf-8
strText = stmFile.ReadAll
stmFile.Close
MsgBox tran_ado(strText) '
End Sub

'需要引用Microsoft ActiveX Data Objects 2.5 以上控件
Function tran_ado(ByVal strA As String) As String
    Dim Stm As New ADODB.Stream
    Stm.Type = adTypeText
    Stm.Mode = adModeUnknown
    Stm.Open
    Stm.Charset = "gb2312"
    Stm.WriteText strA
    Stm.Position = 0
    Stm.Type = adTypeText
    Stm.Charset = "utf-8"
    tran_ado = Stm.ReadText()
    Stm.Close
End Function

作者: 玉树TMD临风    时间: 2019-10-31 11:26
yaozi 发表于 2012-12-22 09:13
Private Sub Command1_Click()
Dim objFile, stmFile
Dim strText As String

2007测试无效




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3