数据接收的相关程序如下:
Try
ReceiveBuff = SerialPort1.ReadTo("F")
BeginInvoke(New EventHandler(AddressOf CallbackShow), vbNull)
Catch ex As Exception
MsgBox("Undefinition data !", MsgBoxStyle.OkOnly, "Prompt")
BeginInvoke(New EventHandler(AddressOf CallbackShow), vbNull)
End Try
(5) 读写数据
1)读取文件内容
要将文件读出,要先建立一个StreamReader的对象。建立此对象的语法有三种:
Dim 对象名称 As New StreamReader(FileStream对象)
Dim 对象名称 As StreamReader = File.OpenText(文件路径)
Dim 对象名称 As New StreamReader(路径名称)
其中,方法一里的FileStream对象指的就是在上一节中打开文件时所建立的对象名称;方法二则是使用File.Opentext来建立一个StreamReader的对象;方法三则是直接指定要读取的文件称即可。使用方法二、三的声明法,并不需要经过打开文件的操作便可读取文件的内容,因为这个步骤在建立StreamReader对象时就已经自动完成了。
此类中所提供的一些方法如下:
Close:关闭并释放此对象的系统资源;
Read:从input stream中读出下一个字符;
ReadLine:从目前的文件读出一行数据,并以字符串类型将所读到的数据返回;
ReadToEnd:将文件的内容由指针所在位置开始读取,直到文件结束。
本程序中首先定义了As为一个StreamReader的对象,然后定义了As为一个ArrayList数组列表。然后调用了StreamReader的EndOfStream方法,如果当前的流位置没有在流的尾端,便调用StreamReader的ReadLine方法,在文件中读出一行数据以字符串类型将所读到的数据返回,并作为数组列表的参数,作为成员被添加到数组列表中。最后调用StreamWriter的Close方法,关闭并释放此对象的系统资源。
相关程序如下:
Dim sr As New System.IO.StreamReader(OpenFileDialog1.FileName)
Dim arr As ArrayList = New ArrayList()
While (sr.EndOfStream) = False
arr.Add(sr.ReadLine())
End While
sr.Close()
Sub CallbackShow(ByVal sender As System.Object, ByVal e As System.EventArgs)
If ToolStripButton1.Enabled = True Then
WriteToFile(Now().ToString)
End If
If ReceiveBuff.Length > 0 Then
JudgeTaskMode(ReceiveBuff)
End If
End Sub
2)将数据写入文件
与读出文件一样,在写入时我们也需要建立一个StreamWriter的对象,而建立此对象的方法也有三种:
Dim 对象名称 As New StreamWriter(FileStream对象)
Dim 对象名称 As StreamWriter = File.AppendText(文件名称)
Dim 对象名称 As StreamWriter = File.CreateText(文件名称)
使用CreateText建立的文件内容会一直被覆盖,而AppendText则是将数据附加到原文件中。
这个类所提供的方法如下:
Close:关闭并释放此对象的系统资源; 基于VB.NET的辐射报警仪上位机管理软件设计(11):http://www.youerw.com/tongxin/lunwen_2658.html