快速掌握VB.NET读写文本文件操作
创始人
2024-06-10 04:50:25
0

对于文本文件大家都知道,这里呢为大家提供一些关于VB.NET读写文本文件的代码示例。在程序中最常用、最基本的操作就是把text写入文件和读回来。现在的应用程序通常不用二进制文件作存储简单的变量,而用它来存储对象,对象集合以及其他机器代码。下面,将看到具体操作的VB.NET读写文本文件例子。

VB.NET读写文本文件

为了把text保存到文件,创建一个基于FileStream的StreamReader对象,然后调用Write方法把需要保存的text写入文件。下面的代码用SaveFileDialog提示用户指定一个文件,用于保存TextBox1的内容。

  1. SaveFileDialog1.Filter=_ 
  2. "TextFiles|*.txt|AllFiles|*.*"  
  3. SaveFileDialog1.FilterIndex=0 
  4. IfSaveFileDialog1.ShowDialog=DialogResult.OKThen  
  5. DimFSAsFileStream=SaveFileDialog1.OpenFile  
  6. DimSWAsNewStreamWriter(FS)  
  7. SW.Write(TextBox1.Text)  
  8. SW.Close()  
  9. FS.Close()  
  10. EndIf 

同样采用类似的语句,我们读取一个文本文件,并把内容显示在TextBox控件中。StreamReader的ReadToEnd方法返回文件的全部内容。

  1. OpenFileDialog1.Filter=_ 
  2. "TextFiles|*.txt|AllFiles|*.*"  
  3. OpenFileDialog1.FilterIndex=0 
  4. IfOpenFileDialog1.ShowDialog=DialogResult.OKThen  
  5. DimFSAsFileStream  
  6. FS=OpenFileDialog1.OpenFile  
  7. DimSRAsNewStreamReader(FS)  
  8. TextBox1.Text=SR.ReadToEnd  
  9. SR.Close()  
  10. FS.Close()  
  11. EndIf 

各种对象的存储

采用BinaryFormatte以二进制的形式,或者用SoapFormatter类以XML格式都可以序列化一个具体的对象。只要把所有BinaryFormatter的引用改为SoapFormatter,无需改变任何代码,就可以以XML格式序列化对象。

首先创建一个BinaryFormatter实例:

  1. DimBinFormatterAsNewBinary.BinaryFormatter() 

然后创建一个用于存储序列化对象的FileStream对象:

  1. DimFSAsNewSystem.IO.FileStream("c:\test.txt",IO.FileMode.Create) 

接着调用BinFormatter的Serialize方法序列化任何可以序列化的framework对象:

  1. R=NewRectangle(rnd.Next(0,100),rnd.Next(0,300),_  
  2. rnd.Next(10,40),rnd.Next(1,9))  
  3. BinFormatter.Serialize(FS,R) 

加一个Serializable属性使得自定义的对象可以序列化

  1. ()>PublicStructurePerson  
  2. DimNameAsString  
  3. DimAgeAsInteger  
  4. DimIncomeAsDecimal  
  5. EndStructure  
  6. DimPAsNewPerson()  
  7. P=BinFormatter.Serialize(FS,Person)  
  8. DimRAsNewRectangle  
  9. R=BinFormatter.Serialize(FS,Rectangle) 


 

【编辑推荐】

  1. VB.NET重命名批量修改大揭秘
  2. 程序员必看VB.NET CASE语句拓展篇
  3. 深入介绍VB.NET类库 SmartRWLocker技巧
  4. VB.NET复制读取音频文件到剪贴板小技巧
  5. 深入概括VB.NET运行环境

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...