VB读取dat文件内容到text文本框以及保存文本框内容到dat文件中
如何保存文本框内容并以日期(text2内容)为名。(dat文件)
如何读取指定日期(dat文件名)的内容。
各位大神来帮帮小弟啊,悬赏奉上!
保存文件时,如何判断文件是否存在,存在提示是否覆盖! 展开
推荐于2016-11-24 · 知道合伙人软件行家
VB读取dat文件需要看dat文件是如何写成的,通常应该是以二进制方式来读取。用Get语句来将数据从文件读到变量中。
同样将数据写入dat文件也应使用二进制方式写,用Put语句实现。
以下是Get语句和Put语句的使用实例:
Option Explicit
Private Type Record ' 定义用户自定义的数据类型。
ID As Integer
Name As String * 20
End Type
'读取数据
Private Sub Command1_Click()
Dim MyRecord As Record, Position ' 声明变量。
' 为随机访问打开样本文件。
Open "C:\TESTFILE.dat" For Random As #1 Len = Len(MyRecord)
' 使用 Get 语句来读样本文件。
Position = 5 ' 定义记录号。
Get #1, Position, MyRecord ' 读第三个记录。
Close #1
Text1.Text = MyRecord.ID
Text2.Text = MyRecord.Name
End Sub
'写入数据
Private Sub Command2_Click()
Dim MyRecord As Record, RecordNumber ' 声明变量。
' 以随机访问方式打开文件。
Open "C:\TESTFILE.dat" For Random As #1 Len = Len(MyRecord)
For RecordNumber = 1 To 5 ' 循环五次。
MyRecord.ID = RecordNumber ' 定义 ID。
MyRecord.Name = "My Name" & RecordNumber ' 建立字符串。
Put #1, RecordNumber, MyRecord ' 将记录写入文件中。
Next RecordNumber
Close #1
End Sub
扩展名是DAT的文件并不是一种标准文件。许多软件都使用这个扩展名,但文件含义不同。而许多数据分析软件也用这个扩展名保存数据。所以这要看具体的软件情况来定。DAT文件,可以按照扩展名来看就是DATA的意思,即数据文件,这类文件并没有进行绝对化的定义,例如VCD光盘中的DAT文件就可以用一般的视频播放器打开,而QQ的DAT文件中则存储了用户信息,是无法使用常规方式打开的,只有QQ程序可以访问。还有一些其他程序都有自己对DAT文件的定义,要通过其特殊的程序来打开与之相关联的DAT文件。
format(now,"YYYY_MM_DD_") & text2.text
文件读取和保存的方法很多,这里不罗嗦了。
'command1是保存文本的,command2是读取文本的
Option Explicit
Private Sub Command1_Click()
Dim a As String, b As String, c As String
Dim filePath As String
Dim filePath1 As String
filePath = "D:\temp" '这里写入你的文件所在的文件夹的名字
If Text2.Text = "" Then
MsgBox "请输入文件名"
Exit Sub
End If
a = Text2.Text
filePath1 = filePath + "\" + a + ".dat"
'这里是你的.dat文件的整体路径,比如"D:\temp\001.dat"
'往这个文件里面写入内容
Open filePath1 For Input As #1
Print #1, a
Close #1
End Sub
Private Sub Command2_Click()
Dim a As String, b As String, c As String
Dim filePath As String
Dim filePath1 As String
filePath = "D:\temp"
If Text2.Text = "" Then
MsgBox "请输入文件名"
Exit Sub
End If
a = Text2.Text
filePath1 = filePath + "\" + a + ".dat"
'先检测文件是否存在,不存在则给出提示退出命令
If Dir(filePath1) = "" Then
MsgBox "文件未找到,请检查文件路径及文件名是否正确"
Exit Sub
End If
'从这里开始读入文件内容
c = "" '先清空变量
Open filePath1 For Input As #1
Do While Not EOF(1)
Line Input #1, b '读每一行
c = c + b '每一行的结果添加到变量c里面
Loop
Close #1
text3.Text = c
End Sub
'command1是读取文本的,command2是保存文本的
'你直接把你的代码程序清空,然后把这段代码复制到你的程序里面就行
Option Explicit
Private Sub Command1_Click()
Dim a As String, b As String, c As String
Dim filePath As String
Dim filePath1 As String
Text1.Text = ""
filePath = App.Path '默认保存在程序所在位置
'要求用户输入文件名
If Text2.Text = "" Then
MsgBox "请输入日期"
Exit Sub
End If
a = Text3.Text
filePath1 = filePath + "\" + a + ".dat"
'先检测文件是否存在,不存在则给出提示退出命令
If Dir(filePath1) = "" Then
MsgBox "文件未找到,请检查文件路径及文件名是否正确"
Exit Sub
End If
'从这里开始读入文件内容
c = "" '先清空变量
Open filePath1 For Input As #1
Do While Not EOF(1)
Line Input #1, b '读每一行
c = c + b '每一行的结果添加到变量c里面
Loop
Close #1
Text1.Text = c
End Sub
Private Sub Command2_Click()
Dim a As String, b As String, c As String
Dim filePath As String
Dim filePath1 As String
filePath = App.Path '这里写入你的文件所在的文件夹的名字
If Text2.Text = "" Then
MsgBox "请输入文件名"
Exit Sub
End If
a = Text2.Text
b = Text1.Text
filePath1 = filePath + "\" + a + ".dat"
'往这个文件里面写入内容
Open filePath1 For Output As #1
Print #1, b
Close #1
End Sub
open app.path & "\" & text2.text & ".dat" for output as #1
print #1,text1.text
close #1
读取:
open app.path & "\" & text2.text & ".dat" for binary as #1
text1.text=input(lof(1),#1)
close #1
Private Sub Command1_Click() '保存
If Dir(App.Path & "\日记\" & Text2.Text & ".dat") "" Then
If MsgBox("文件已存在,是否覆盖?", vbYesNo) = vbYes Then
Kill App.Path & "\日记\" & Text2.Text & ".dat"
Else
Exit Sub
End If
End If
Open App.Path & "\日记\" & Text2.Text & ".dat" For Output As #1
Print #1, Text1.Text
Close #1
MsgBox "文件保存完毕!"
End Sub
Private Sub Command2_Click() '读取
If Dir(App.Path & "\日记\" & Text3.Text & ".dat") = "" Then
MsgBox "指定的文件未找到!"
Exit Sub
End If
Text2.Text = Text3.Text
Open App.Path & "\日记\" & Text3.Text & ".dat" For Binary As #1
Text1.Text = Input(LOF(1), #1)
Close #1
MsgBox "文件读取完毕!"
End Sub