vb读取txt文件到textbox (一)
vb读取txt文件到textbox (一)
2011年05月10日
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 #filenumber,要写入的文本
dim gfilenum as integer
gfilenum = FreeFile
Open "文件路径及文件名" For input As gfilenum \'以读出方式打开文本
input #gfilenum ,用来放读取的内容的内存变量名
还可用line input#,input()等读取更详细的查msdn
2.VB读取文本文件时,调用TextStream 对象中使用OpenTextFile报错了。[/b]
如果是
Set f = fs.OpenTextFile("E:\\table\\trace.txt", forreading, True, TristateUseDefault)
出现错误:
Run-time error \'5\':
Invalid procedure call or argument
如果是
Set f = fs.OpenTextFile("E:\\table\\trace.txt)"
则不会报错。
用文件对象啊FileSystemControl操作就好了啊
再加上一个TextStream读取文件第一行就好了啊。
3.VB通过FileSystemObject,可以读取文本文件(.txt)。对于.bat文件,VB可否直接读取?
bat也属于文本类文件
可以读取
不用FSO也行:
把文本文件内容读取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)
把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
[b]4.打开文本文件
open app.path &"/你的文本文件名.txt" for output as #1
Message.Name=text1.text
Message.Phone=text2.text
.......................
message.PostCode=text5.text
Put #1,i,Message \'(此处i=1,如要多次写入,可用循环设置i的值)
close #1
\'写入的同时即已保存
查询的话就取出文本里的内容,用instr()函数就可实现了
5.查找vbCrLf、vbLf换行标记[/b]
[b]6.怎样读取一个文本文件的全部内容[/b]
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:\\testfile.txt", ForWriting, True)
f.Write "Hello world!" & vbCrLf & "VB Script is fun!"
Set f = fso.OpenTextFile("c:\\testfile.txt", ForReading)
SkipLineInFile = f.readall
Debug.Print SkipLineInFile
End Sub
[b]7.把文本文件内容读取TextBox:[/b]
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)
[b]8. 把TextBox内容写入文本文件:[/b]
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
[b]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 是一个文本文件
textling=of.readline
//如果你要读取第14行,可以用一个循环,跳过前面的13行,如下
dim lop as integer
for lop=0 to 12
of.skip
next
//然后再读取
12.搜索了一下,大家主要用两种方法对文本文件加密。[b][/b]
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