VB文本文件读入中文成了乱码,求助!
我想写一个程序把一个文件夹内的所有TXT文件中的类似“http://ftp.xhu.edu.cn/日韩歌手/安室奈美惠/PLAY/安室奈美恵-PLAY/04It'sall...
我想写一个程序把一个文件夹内的所有TXT文件中的类似“http://ftp.xhu.edu.cn/日韩歌手/安室奈美惠/PLAY/安室奈美
恵 - PLAY/04 It's all about you.mp3”的数据找出来并写入VB.txt中。格式为:“mkList("http://...","歌手名-歌曲
名");”
但是出了一个问题。读入的数据是乱码。也就是“qq”这个数据是乱码,请问如何解决啊。
这是我的源码:
Private Sub Command1_Click()
Path = Text1
A = Text2
b = Text3
For i = A To b
file = Path & i & ".txt"
Open file For Input As #1 'app.Path &
'qq = Input(LOF(1), 1)
qq = StrConv(InputB(LOF(1), 1), vbUnicode)
Close #1
l = Len(qq)
For j = 1 To l
x = Mid(qq, j, 4)
If LCase(x) = ".mp3" Then
js = 0
For k = j - 4 To j - 100 Step -1 'http://ftp.xhu.edu.cn/日韩歌手/安室奈美惠/PLAY/安室奈
美恵 - PLAY/04 It's all about you.mp3
y = Mid(qq, k, 4) 'mkList("http://....(点击上的歌)......","<内网>歌手—歌名");
z = Mid(qq, k, 1)
If z = "/" Then
js = js + 1
If js = 1 Then cc = Mid(qq, k + 4, j - k)
If js = 3 Then kk = k
If js = 4 Then bb = Mid(qq, k + 1, kk - k - 1)
End If
If LCase(y) = "http" Then
aa = Mid(qq, k, j - k + 4)
Data = "mkList" & Chr(40) & Chr(34) & aa & Chr(34) & Chr(44) & Chr(34) & bb & Chr(45) &
cc & Chr(34) & Chr(41) & Chr(59) & Chr(13) & Chr(10)
Open "音乐列表.txt" For Append As #2
Print #2, Data
Close #2
End If
If LCase(y) = "http" Then Exit For
Next k
End If
Next j
Next i
r = MsgBox("完成任务!" & Chr(13) & Chr(10) & "已经在当前文件输出“音乐列表" & Chr(46) & "txt”", , "完成")
End Sub 展开
恵 - PLAY/04 It's all about you.mp3”的数据找出来并写入VB.txt中。格式为:“mkList("http://...","歌手名-歌曲
名");”
但是出了一个问题。读入的数据是乱码。也就是“qq”这个数据是乱码,请问如何解决啊。
这是我的源码:
Private Sub Command1_Click()
Path = Text1
A = Text2
b = Text3
For i = A To b
file = Path & i & ".txt"
Open file For Input As #1 'app.Path &
'qq = Input(LOF(1), 1)
qq = StrConv(InputB(LOF(1), 1), vbUnicode)
Close #1
l = Len(qq)
For j = 1 To l
x = Mid(qq, j, 4)
If LCase(x) = ".mp3" Then
js = 0
For k = j - 4 To j - 100 Step -1 'http://ftp.xhu.edu.cn/日韩歌手/安室奈美惠/PLAY/安室奈
美恵 - PLAY/04 It's all about you.mp3
y = Mid(qq, k, 4) 'mkList("http://....(点击上的歌)......","<内网>歌手—歌名");
z = Mid(qq, k, 1)
If z = "/" Then
js = js + 1
If js = 1 Then cc = Mid(qq, k + 4, j - k)
If js = 3 Then kk = k
If js = 4 Then bb = Mid(qq, k + 1, kk - k - 1)
End If
If LCase(y) = "http" Then
aa = Mid(qq, k, j - k + 4)
Data = "mkList" & Chr(40) & Chr(34) & aa & Chr(34) & Chr(44) & Chr(34) & bb & Chr(45) &
cc & Chr(34) & Chr(41) & Chr(59) & Chr(13) & Chr(10)
Open "音乐列表.txt" For Append As #2
Print #2, Data
Close #2
End If
If LCase(y) = "http" Then Exit For
Next k
End If
Next j
Next i
r = MsgBox("完成任务!" & Chr(13) & Chr(10) & "已经在当前文件输出“音乐列表" & Chr(46) & "txt”", , "完成")
End Sub 展开
优质机构答主
2020-12-22 · 百度认证:广东太平洋互联网信息服务有限公司官方账号,优质数码...
关注
展开全部
解压文件出现中文乱码怎么办解决办法
展开全部
VB天生就是UNICODE的命,除非兼容ANSI,不要使用LENB等后边带B的命令命令
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
qq = Input(LOF(1), 1) qq = StrConv(InputB(LOF(1), 1), vbUnicode) 没有什么特殊情况用上面那个几个,StrConv用于多字节字符转换。一般来说vb会自动处理中文等unicode字符的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询