重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Dim i As Integer
网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了雄县免费建站欢迎大家使用!
Dim j As Integer
Dim myFile As New System.IO.StreamWriter("c:\Test.txt")
Dim strTemp As String = ""
For j = 0 To frmQuery.DataGridView1.RowCount - 1
strTemp = ""
For i = 0 To frmQuery.DataGridView1.Columns.Count - 1
strTemp = "'" frmQuery.DataGridView1(i, j).Value "'" ","
Next
myFile.WriteLine(strTemp)
Next
myFile.Close()
格式为表格每行保存为文本文件的一行,字段之间以逗号分隔。
Private Sub Command1_Click()
'写文件示例
Dim strFileName As String '文件名
Dim lngHandle As Long '句柄
Dim strWrite As String '要写入的文本内容
strFileName = App.Path "\a.txt"
''''''''App.Path "\a.txt"相对路径
''"c:\w.txt"绝对路径
lngHandle = FreeFile() '取得句柄
'准备要写入的内容
strWrite = Text1.Text '或者 strWrite = "这些文字将被写入文件。"
'For后面的参数表示以何种方式打开文件,Input是读取,Output是覆盖写入,Append是追加写入
''''''append是每次在文件末尾写入,不删除其它已经存在的文件.如果换成output则删除其它文件后再写入
''''''print#1,text1.text ''''''如果print换成write则写进txt中后自动加双引号
Open strFileName For Output As lngHandle '打开文件
Print #lngHandle, strWrite '写入文本
Close lngHandle '关闭文件
End Sub
Private Sub Command2_Click()
'读文件示例
Dim strFileName As String '文件名
Dim lngHandle As Long '文件句柄
Dim strAll As String '所读取的文本文件的所有内容
Dim strLine As String '在循环中存放每行的内容
strFileName = App.Path "\a.txt"
'获得文件的句柄
lngHandle = FreeFile()
'For后面的参数表示以何种方式打开文件,Input是读取,Output是覆盖写入,Append是追加写入
Open strFileName For Input As lngHandle
'循环直到文件尾
Do While Not EOF(lngHandle)
'每次读取一行存放在strLine变量中
Line Input #lngHandle, strLine
'每次读取都把所读到的内容连接到strAll变量,由于Line Input去掉了换行符,所以这里补上
strAllstrAll = strAll strLine vbCrLf
Loop
'显示得到的全部分内容
MsgBox strAll
End Sub
Private Sub Command1_Click()
Open App.Path "\a.txt" For Output As #1
Print #1, Text1.Text '这里可以是数据本身也可以是目标控件的属性
Close #1 '关闭打开的文件
End Sub
'For后面的参数表示以何种方式打开文件,Input是读取,Output是覆盖写入,Append是追加写入
append是每次在文件末尾写入,不删除其它已经存在的文件.如果换成output则删除其它文件后再写入 print#1,text1.text 如果print换成write则写进txt中后自动加双引号,以上就是数据保存为VB.NET TXT文件的代码。
保存文件的步骤为:
关闭流,特别是写入流
关闭并保存文件
示例代码如下:
Imports System.Windows.Forms
Imports System.IO
Imports System.Text
Sub SaveFileDemo()
'打开文件。如果文件不存在则创建新的文件
Dim myFile As New IO.FileStream("d:\data.txt", _
FileMode.OpenOrCreate, _
FileAccess.Write)
'在文件末尾添加一行
Dim tw As New StreamWriter(myFile)
myFile.Seek(0, SeekOrigin.End)
tw.WriteLine("白刃格斗英雄连英模部队方队亮相阅兵")
'关闭流
tw.Close()
'关闭文件并保存文件
myFile.Close()
End Sub
当然能了
你可以将你的内容按行分别存储在数组变量中
a="全部内容"
b=split(a,vbcrlf)
b(0) 即第一行 保存文件1
b(1) 即第二行 保存文件2
b(2)-b(x) 就是剩下内容
软糖来告诉你吧。
VB.net中读写文件主要使用System.IO命名空间。
① 使用 File.ReadAllText 读取
Dim s As String = System.IO.File.ReadAllText("C:\a.txt")
② 使用 StreamReader 读取,注意编码格式和写入的编码保持一致。
Dim sr As StreamReader = New StreamReader("C:\a.txt", System.Text.Encoding.UTF8)
Dim s As String = sr.ReadToEnd()
sr.Close()
③ 使用 File.WriteAllText 写入,会覆盖同名的文件。
Dim 要写的内容 As String = ""
File.WriteAllText(文件路径, 要写的内容, System.Text.Encoding.UTF8)
④ 使用 StreamWriter 写入。
Dim sw As System.IO.StreamWriter = New System.IO.StreamWriter("C:\a.txt", False, System.Text.Encoding.UTF8)
sw.WriteLine(TextTB.Text)
sw.Close()
⑤ 使用 StreamWriter 追加写入。
将上面代码的第二个参数False改为True。
◆ 满意请采纳,谢谢 ◆
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
FileOpen(1, "c:\34.txt", OpenMode.Output, OpenAccess.Write)
PrintLine(1, TextBox1.Text)
FileClose(1)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
FileOpen(1, "c:\34.txt", OpenMode.Input, OpenAccess.Read)
Dim text As String = ""
Do Until EOF(1)
text += LineInput(1) vbCrLf
Loop
TextBox2.Text = text
FileClose(1)
End Sub
还是有点不同,vb6的print等同于这里printLine, print 类似于vb6的write,而且不换行。
至于你错在哪里我不知道了,反正我的代码测试了一下没问题。
窗体上有两个多行文本框,两个按钮(写入和读取)
补充:我想出一个原因,可能你没有关闭文件吧。写入的部分内容还在内存缓冲区,还没完全写入磁盘。