以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]读取文本内容进制转换出差  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=100701)

--  作者:youkacard
--  发布时间:2017/5/16 19:31:00
--  [求助]读取文本内容进制转换出差
各位老师好,我写了一个代码,需要读取文本文件的内容(16进制),转成10进制之后输出到新的文本文件,

第一个可以正常输出,循环到第二个就报错了,报错如下:

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170516192611.png
图片点击可在新窗口打开查看

Dim lj As String = e.Form.Controls("TextBox1").Value \'文本路径
Dim sc As String = e.Form.Controls("TextBox2").Value \'输出路径

If lj IsNot Nothing Or sc IsNot Nothing Then
Dim s As String = FileSys.ReadAllText(lj)
Dim Values() As String
Values = s.Split(chr(13)) \'以回车分割

For i As Integer = 0 To (Values.Length - 1)
Dim hex As String = HexToDec(Values(i))
FileSys.WriteAllText(sc,hex & Chr(13),True)
Next
Else
MessageBox.Show("请选择文件位置","提示")
End If


[此贴子已经被作者于2017/5/16 19:40:42编辑过]

--  作者:youkacard
--  发布时间:2017/5/16 19:32:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170516193109.png
图片点击可在新窗口打开查看

这是需要转换的文本文件

如果不用进制函数,就可以正常输出,不知道什么原因
[此贴子已经被作者于2017/5/16 19:34:35编辑过]

--  作者:有点蓝
--  发布时间:2017/5/16 20:43:00
--  
If lj IsNot Nothing Or sc IsNot Nothing Then
    Dim s As String = FileSys.ReadAllText(lj)
    Dim Values() As String = s.Replace(vbcr,"").Split(vblf) \'以回车分割
    
    For i As Integer = 0 To Values.Length - 1
        Dim hex As String = HexToDec(Values(i))
        FileSys.WriteAllText(sc,hex & vbcrlf,True)
    Next
Else
    MessageBox.Show("请选择文件位置","提示")
End If