以前vb6的读写老写错,进入vb2010终于有些明白了。好,正戏开场:
主演: my.computer.filesystem
system.io.streamReader
system.io.streamWriter
配角:OpenFileDialog
SaveFileDialog
剧情一般都是OpenFileDialog或SaveFileDialog跟龙套,提供路径和文件名后,由主演们操作。
先调戏一下,,小演一下:
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- If OpenFileDialog1.showdialog = DialogResult.OK Then
- My.Computer.FileSystem.WriteAllText(OpenFileDialog1.FileName, TextBox1.Text, False)
- End If
- End Sub
my命名空间具有快速访问特性,常见的:
my.computer 当前(本地)计算机硬件、软件、文件 信息。
my.application 当前应用程序的信息:标题、目录、版本号。
my.forms 当前项目窗体信息
my.resources 应用 程序资源的相关信息(只读),允许用户动态获取应用程序的资源。
my.setting 应用程序设置的相关程序。存储或设置
my.user 当前机器上激活的用户信息
my.webservices 当前机器激活的WEB服务信息,也可用于访问新的WEB服务器。
比如:my.user.name 当前机器上的用户名
my.computer.clock.location 当前机器上的当地日期与时间
正式调戏:
对于my
- My.Computer.FileSystem.ReadAllText(OpenFileDialog1.FileName, System.Text.ASCIIEncoding.Default)
- My.Computer.FileSystem.WriteAllText(OpenFileDialog1.FileName, TextBox1.Text, False)
注2:写时false表示不追加,即覆盖式写入。
对于streamRead,StreamWriter
- Imports System.IO
- Dim RT As StreamReader
- RT = New StreamReader(OpenFileDialog1.FileName, System.Text.ASCIIEncoding.Default)
- TextBox1.Text = RT.ReadToEnd() '读取全部
- Textbox1.Text=RT.ReadLine() '一行一行读,常配合do循环
- RT.Close()
- Dim WT As StreamWriter
- WT = New StreamWriter(SaveFileDialog1.FileName, False, System.Text.ASCIIEncoding.Default) '非追加式写入
- WT.WriteLine(TextBox1.Text) ‘一行一行地写入
- WT.Write(TextBox1.Text) '字串流写入
- WT.Close()
其实这两个主演有时假戏真做,常有“沟通”
- Dim WT As StreamWriter
- WT = My.Computer.FileSystem.OpenTextFileWriter(SaveFileDialog1.FileName, False, System.Text.ASCIIEncoding.Default)
- '或:
- Dim RT As StreamReader
- RT = My.Computer.FileSystem.OpenTextFileReader(OpenFileDialog1.FileName, System.Text.ASCIIEncoding.Default)
广告:
textbox1.select(0,0) 表示光标具文本框首,不选择任何文本,第一个0表示选择的起始位置,第二个0表示选择的终点位置。