资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

VB.NET中怎么操作文本文件

今天就跟大家聊聊有关VB.NET中怎么操作文本文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、网站制作、临县网络推广、微信小程序定制开发、临县网络营销、临县企业策划、临县品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供临县建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

在.NET里的System.IO.File和System.IO.FileInfo里的OpenText和AppenText等几个方法都是使用UTF-8编码操作文件的.这就导致如果操作不是使用UTF-8编码编写的文件时将会出现乱码现象!!!

解决方法就是对文本文件使用字节流操作,即不使用.NET里提供的OpenText和AppenText等几个方法,而是将文本当成二进制文件来操作,并且在操作时使用Encoding的方法进行相应的解码即可

实现VB.NET操作文本文件代码如下:

打开文本文件:

  1. Public Function LoadFile
    (ByVal FileName As String) 
    as String   

  2. If FileName= "" Then   

  3. Return ""   

  4. End If   

  5. Try   

  6. Dim FileReader As FileFileStream = 
    File.Open(FileName, FileMode.Open)   

  7. Dim FileByte(FileReader.Length) As Byte   

  8. FileReader.Read(FileByte, 0, 
    FileReader.Length)   

  9. '转成系统对应的编码字符   

  10. Dim MyEncoder As EncodingEncoding 
    = Encoding.Default   

  11. FileReader.Close()   

  12. FileReader = Nothing   

  13. Return New String(MyEncoder.
    GetChars(FileByte))   

  14. Catch e As Exception   

  15. Return ""   

  16. End Try   

  17. End Sub  

保存文件:

  1. Public Sub SaveToFile(ByRef Conten 
    As String, ByVal FileName As String)   

  2. '/*将Conten字符串的内容写入FileName文件   

  3. If FileName = "" Then   

  4. Exit Sub   

  5. End If   

  6. Try   

  7. Dim FileToWrite As FileFileStream 
    = File.Create(FileName)   

  8. Dim rByte() As Byte = Encoding.
    Default.GetBytes(Conten.ToCharArray)   

  9. FileToWrite.Write(rByte, 0, 
    rByte.Length)   

  10. FileToWrite.Close()   

  11. FileToWrite = Nothing   

  12. Catch e As Exception   

  13. End Try   

  14. End Sub  

看完上述内容,你们对VB.NET中怎么操作文本文件有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


分享标题:VB.NET中怎么操作文本文件
转载来于:http://cdkjz.cn/article/picjcj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220