VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > 批处理教程 >
  • vb.net教程之文件操作

文件操作(相关vb.net教程)
文件分类:文本文件、二进制文件、随机文件。
一、文件操作的步骤为:
1、为文件取得一个序号:
fn=freefile()
2、打开文件:
fileopen(文件序号fn,文件名称,打开方式openmode.input/output/append/Binary/ random)
3、读写操作:Print/printline/Write/writeline/ input/lineinput/fileget/fileput
4、关闭文件: fileclose(fn)
一、文本文件的读写操作:
向文件中写入、读出数据用如下方法:
(一)Print/printline方法 / Write/writeline方法
作用:向文本文件中写入数据。
在此操作之前需先打开文件,使用的方法是fileopen
使用形式为:
Fileopen(number,filename,openmode)
Number—为打开文件的编号,它由freefile()获取。
Filename—打开的文件名
Openmode—打开方式,共有:
Openmode.append—打开文件并以追加的形式写入,
openmode.input—打开文件用以读取数据。
openmode.output—打开文件并以覆盖的形式写入
应用实例:用printline方法向文件中写入数[实验报告36 ]
应用见,用printline方法向文件中写入数据,程序为:
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim n As Integer
        n = FreeFile()
        FileOpen(n, "d:\uu.txt", OpenMode.Output)
        PrintLine(n, "张三")
        PrintLine(n, "李四")
        PrintLine(n, "刘五")
        FileClose(n)
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        End
    End Sub
End Class
另有程序见,用Write写入,只是它写入数据时,字符串自动加又引号(“”)。
(二)input/lineinput
作用:从文本文件中读出数据。
Input在读文件时一个数据项一个数据项的读取,上面用print/write语句写入的数据可以用input来读取
 lineinput则是以行为单位进行读取。
在对文件进行读时常用一个函数eof(n)用以测文件是否结束。
函数lof(n)则是测量文件的长度,单位是字节。
应用实例:用Write写入然后用input读出。[实验报告37 ]
见,用Write写入然后用input读出,程序为:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i, j As Integer
        i = FreeFile()
        FileOpen(i, "d:\tt.txt", OpenMode.Append)
        For j = 1 To 10
            Write(i, j)
        Next
        FileClose(i)
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        End
    End Sub
 
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim n, x As Integer
        Dim s As String = ""
        n = FreeFile()
        FileOpen(n, "d:\tt.txt", OpenMode.Input)
        TextBox1.Text = ""
        Do While Not EOF(n)
            Input(n, x)
            s = s + Str(x) + " "
        Loop
        FileClose(n)
        TextBox1.Text = s
    End Sub
说明:向文件中写入与读出数据时,存放变量的数据类型要一致,如上面写入时的变量j,读出时变量x都是整型。
综合应用一例:试开发一软件以文本框为编辑器,完成文本文件的打开、保存及文字格式设置操作。[实验报告38 ]
除外也可以加上文字内容的编辑处理(复制、剪切、粘贴)、文字格式设置(字体、字号、颜色)。
程序见,文本文件的读写操作一例,程序为:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        OpenFileDialog1.Filter = "text file(*.txt)|*.txt|all file(*.*)|*.*"
        ‘ OpenFileDialog1.DefaultExt = "txt"
        SaveFileDialog1.Filter = "text file(*.txt)|*.txt|all file(*.*)|*.*"
        SaveFileDialog1.DefaultExt = "txt"
    End Sub
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim fn As Integer
        Dim s As String = ""
        OpenFileDialog1.FileName = ""
        If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
            fn = FreeFile()
            FileOpen(fn, OpenFileDialog1.FileName, OpenMode.Input)
            Do While Not EOF(fn)
                s = s + LineInput(fn) + vbCrLf
            Loop
            FileClose(fn)
            TextBox1.Text = s
            Me.Text = OpenFileDialog1.FileName
        End If
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim fn As Integer
        Dim s As String = ""
        SaveFileDialog1.FileName = ""
        If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
            fn = FreeFile()
            FileOpen(fn, SaveFileDialog1.FileName, OpenMode.Output)
            Print(fn, TextBox1.Text)
            FileClose(fn)
            Me.Text = SaveFileDialog1.FileName
        End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        End
    End Sub
 
    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
        ColorDialog1.ShowDialog()
        TextBox1.ForeColor = ColorDialog1.Color
    End Sub
    Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
        FontDialog1.ShowDialog()
        TextBox1.Font = FontDialog1.Font
    End Sub
说明:
 
1、上面程序中的Print(fn, TextBox1.Text)语句可以换成write(fn,textbox1.text),效果是一样的,只是在运行后生成的文件中数据加了双引号。
2、由上例可知,从文件中读数据时可以以行为单位读取,然后汇总成一串后整体显示到文本框上,但从文本框向文件中写入时,则可以整体进行。


相关教程