以前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)
注1:读时,容易乱码,加上后面参数部分 注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()
可以看出stream强大,my有限制,但my更快捷。 其实这两个主演有时假戏真做,常有“沟通”
-
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)
这样沟通后,steam就站上台前,my就退居幕后了。 广告: textbox1.select(0,0) 表示光标具文本框首,不选择任何文本,第一个0表示选择的起始位置,第二个0表示选择的终点位置。
|