VB超级模块函数VB读写记事本-防止乱码支持UTF-8和GB2312编码

Private Sub Command1_Click()

Writein "C:\Users\Administrator\Desktop\1.txt", "文本文内容"

End Sub

Private Sub Form_Load()

Text1 = ReadANSI("C:\Users\Administrator\Desktop\1.txt")

Text2 = ReadUTF8("C:\Users\Administrator\Desktop\1.txt")

End Sub

'写入TXT文件

Private Function Writein(ByVal txtpath As String, ByVal txt As String)

On Error Resume Next

Open txtpath For Output As #1 '打开XXX路径的XXX文件(双引号里表示文件位置和文件名)

Print #1, txt '写入Text1的Text内容

Close #1 '关闭

End Function

'防止 记事本 乱码

Private Function ReadUTF8(Path As String)

Dim EncodingMode As String '编码模式

Dim arrBinary() As Byte

EncodingMode = "UTF-8"

Open Path For Binary As #1

ReDim arrBinary(LOF(1) - 1)

Get #1, , arrBinary()

Close #1

ReadUTF8 = BytesToBstr(arrBinary, EncodingMode)

End Function

Private Function ReadANSI(Path As String) '普通模式 GB2312

Dim EncodingMode As String '编码模式

Dim arrBinary() As Byte

EncodingMode = "GB2312"

Open Path For Binary As #1

ReDim arrBinary(LOF(1) - 1)

Get #1, , arrBinary()

Close #1

ReadANSI = BytesToBstr(arrBinary, EncodingMode)

End Function

Private Function BytesToBstr(Binary, Unicode)

Dim objstream As Object

Set objstream = CreateObject("ADODB.Stream")

objstream.Type = 1

objstream.Mode = 3

objstream.Open

objstream.Write Binary

objstream.Position = 0

objstream.Type = 2

objstream.Charset = Unicode

BytesToBstr = objstream.ReadText

objstream.Close

End Function

相关推荐
专注VB编程开发20年7 天前
vb6多线程异步,VB.NET 全用API实现:CreateThread创建多线程,等待线程完成任务
爬虫·.net·线程池·vb6·vb6多线程·抢单·vba优化
专注VB编程开发20年1 个月前
让EXCEL VBA支持鼠标滚轮,vb6 IDE鼠标滚轮插件原理
vb6·addin·vb6插件·hook api
水坚石青2 个月前
Eclipse+Java+Swing实现学生信息管理系统-TXT存储信息
java·eclipse·gui·swing·txt
专注VB编程开发20年5 个月前
vb如何获取鼠标形状的特征码
计算机外设·vb6·光标形状
津津有味道7 个月前
VB6批量修改IC卡全部扇区密钥源码
rfid·nfc·vb6·修改ic卡密钥
Thomas_Cai8 个月前
读取pdf、docx、doc、ppt、pptx并转为txt
pdf·ppt·txt·doc
津津有味道8 个月前
Vb6 TCP Server服务端监听多个RFID读卡器客户端上传的刷卡数据
服务器·tcp·rfid·server·vb6