vb读取txt文件
1.怎么通过代码创建一个文本文件,并读取,更新内容
以上为随即方式打开的文本文件
dim gfilenum as integer
gfilenum = FreeFile
Open  "文件路径及文件名" For Random As gfilenum len=3
\'以随即方式打开一文件如果文件不存在就新建
用get #gfilenum ,记录在文件中位置,要放取得的数据的变量\'读取操作
用put #gfilenum ,记录在文件中位置,要放着要写入数据的变量\'写操作close #filenum\'关闭文件
以下为顺序方式打开的文件
dim gfilenum as integer
gfilenum = FreeFile
Open  "文件路径及文件名" For output As gfilenum \'以写入方式打开文本
print #gfilenum,要写入的文本
write #filenum,要写入的文本
dim gfilenum as integer
gfilenum = FreeFile
Open  "文件路径及文件名" For input As gfilenum \'以读出方式打开文本input #gfilenum ,用来放读取的内容的内存变量名
还可用line input#,input()等读取更详细的查msdn
2.VB读取文本文件时,调用TextStream 对象中使用OpenTextFile报错了。如果是
Set f = fs.OpenTextFile("E:\\table\\", forreading, True, TristateUseDefault)
出现错误:
Run-time error \'5\':
Invalid procedure call or argument
如果是
Set f = fs.OpenTextFile("E:\\table\\)"
则不会报错。
用文件对象啊FileSystemControl操作就好了啊
再加上一个TextStream读取文件第一行就好了啊。
3.VB通过FileSystemObject,可以读取文本文件(.txt)。对于.bat文件,VB可否直接读取?
bat也属于文本类文件
可以读取
不用FSO也行:
把文本文件内容读取TextBox:
Dim TempFile As Longgetsavefilename
Dim LoadBytes() As Byte
TempFile=FreeFile
Open 文件名 For Binary As #TempFile
Redim LoadBytes(1 To Lof(TempFile)) As Byte
Get #TempFile,,LoadBytes
Close TempFile
Text1.Text=StrConv(LoadBytes,vbUniCode)
把TextBox内容写入文本文件:
Dim TempFile As Long
Dim SaveBytes() As Byte
SaveBytes=StrConv(Text1.Text,vbFromUniCode)
TempFile=FreeFile
Open 文件名 For Binary As #TempFile
Put #TempFile,,SaveBytes
Close TempFile
4.
打开文本文件
open app.path &"/你的文本文件名.txt" for output as #1
Message.
Message.
.
......................
message.
Put #1,i,Message  \'(此处i=1,如要多次写入,可用循环设置i的值) close #1
\'写入的同时即已保存
查询的话就取出文本里的内容,用instr()函数就可实现了
5.
查vbCrLf、vbLf换行标记
6.怎样读取一个文本文件的全部内容
dim lenfile as integer
dim filenum as integer
filenum=freefile()
open "file.dat" for input as filenum
lenfile=lof(#filenum)
strfile=input(lenfile,#filenum)\'将所有数据放入变量strfile中
close filenum
Private Sub Form_Load()
Const ForReading = 1, ForWriting = 2
Dim fso, f
Dim SkipLineInFile As String
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("c:\\", ForWriting, True)
f.Write "Hello world!" & vbCrLf & "VB Script is fun!"
Set f = fso.OpenTextFile("c:\\", ForReading)
SkipLineInFile = f.readall
Debug.Print SkipLineInFile
End Sub
7.把文本文件内容读取TextBox:
Dim TempFile As Long
Dim LoadBytes() As Byte
TempFile=FreeFile
Open 文件名 For Binary As #TempFile
Redim LoadBytes(1 To Lof(TempFile)) As Byte
Get #TempFile,,LoadBytes
Close TempFile
Text1.Text=StrConv(LoadBytes,vbUniCode)
8. 把TextBox内容写入文本文件:
Dim TempFile As Long
Dim SaveBytes() As Byte
SaveBytes=StrConv(Text1.Text,vbFromUniCode)
TempFile=FreeFile
Open 文件名 For Binary As #TempFile
Put #TempFile,,SaveBytes
Close TempFile
9.已知文本文件,要从中搜索一段特定的字符串信息。如搜索[MAGIC_DATABASES],该怎么做?
dim str as string
open commondialog1.filename for input #1
input #1, str
dim where as integer
where = instr(str,"magic_databases")
10.
Line Input # 语句示例
本示例使用 Line Input # 语句从顺序文件中读入一行数据,并将该行数据赋予一个变量。本示例假设 TESTFILE 文件内含数行文本数据。
Dim TextLine
Open "TESTFILE" For Input As #1  \' 打开文件。
Do While Not EOF(1)  \' 循环至文件尾。
Line Input #1, TextLine  \' 读入一行数据并将其赋予某变量。
Debug.Print TextLine  \' 在立即窗口中显示数据。
Loop
Close #1  \' 关闭文件。
11.如何操作“文本文件”
fso(Filesystemobject)对象集中的文件集合里有readline方法。
Dim of As Object
Dim fs as Object
dim TextLine as string
Set fs=createobject("scripting.Filesystemobject")
set of=fs.OpenTextFile(app,path+"\\myfile.aaa")
/
/myfile.aaa 是一个文本文件
adline
//如果你要读取第14行,可以用一个循环,跳过前面的13行,如下
dim lop as integer
for lop=0 to 12
of.skip
next
//然后再读取
12.
搜索了一下,大家主要用两种方法对文本文件加密。
1.对文本文件的ASC码加减
2.用XOR函数
我发现都有问题举例
1.代码
Public Function nnnn(ByVal s As String) As String \'解密
On Error Resume Next
Dim ss As String, i As Byte, lens As Byte
lens = Len(s)
For i = 1 To lens
ss = ss & Chr(Asc(Mid(s, i, 1)) - lens - i)
Next
nnnn = ss
End Function
Public Function mmmm(ByVal s As String) As String  \'加密On Error Resume Next
Dim ss As String, i As Byte, lens As Byte
lens = Len(s)
For i = 1 To lens
ss = ss & Chr(Asc(Mid(s, i, 1)) + lens + 1)
Next
mmmm = ss
End Function
当文件中有“!~”时出错
XOR加密
Dim I as long
For I=1 To UBound(LoadBytes)
LoadBytes(I)=LoadBytes(I) Xor &HFF
Next I
13.怎么判断一个文本文件是否打开?
判断如果没打开就删除该文本文件!
要用到FileSystemObject 对象的 FileExists 和 deletefile方法
if dir(myfile)="" then exit sub
FileNumber = FreeFile  \' 取得未使用的文件号。
On Error GoTo ErrorHandler  \' 打开错误处理程序。
Open MyFile For Output As #FileNumber  \' 打开输出文件。Kill "TESTFILE"  \' 试图删除已打开的文件。
Exit Sub  \' 退出程序,以避免进入错误处理程序。
ErrorHandler:  \' 错误处理程序。
Select Case Err.Number  \' 检查错误代号。
Case 55  \' 发生“文件已打开”的错误。
Close #FileNumber  \' 关闭已打开的文件。
Case Else
\' 处理其他错误状态 . . .

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。