展开全部
用API函数获得用户文件夹,这个我不晓得,我只会用获取的用户名来做...
下面的代码,我并没有限制用户桌面上的TXT文件必须为“新建 文本文档.txt”,也就是满足文件里有字符串“1234”的TXT文件,就删除。你可以自己调整一下,这样就不需要FileListBox控件了,如果只是针对你自己的电脑,这样连API函数也不需要用上了,直接自己把文件夹路径附上去。
在窗体上添加一个Timer控件,一个FileListBox控件,Timer1.Interval=2000,File1.Pattern="*.txt",File1.Visible=False,添加代码如下:
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Dim UserName As String, UserPath As String
Private Sub Form_Load()
'获取当前用户名
Dim s As String * 255
Call GetUserName(s, 255)
'提取出用户名来
Dim i As Integer
For i = 1 To 255
'由于s长度为255,所以其中有一部分字符是无效字符(或者说是用于表征字符结束)
If Asc(Mid(s, i, 1)) < 32 Then
UserName = Left(s, i - 1)
Exit For
End If
Next i
'设置用户文件夹
'并不是所有用户文件夹都是这样的路径,所以这行代码没有普遍性
UserPath = "C:\Documents and Settings\" & UserName & "\桌面\"
'获取满足条件的文件
File1.Path = UserPath
File1.Refresh
End Sub
Private Sub Timer1_Timer()
'获取满足条件的文件
File1.Refresh
'循环
For i = 0 To File1.ListCount - 1
'判断文件是否有符合条件的字符串
If CheckTxt(UserPath & File1.List(i)) Then
'删除文件
Kill UserPath & File1.List(i)
End If
Next i
End Sub
Private Function CheckTxt(Filepath As String) As Boolean
Dim Fnum As Integer, s As String, s1 As String
'读取出文件里面的内容
Fnum = FreeFile
Open Filepath For Input As #Fnum
Do Until EOF(Fnum)
Line Input #Fnum, s1
s = s & s1 & vbCrLf
Loop
Close #Fnum
'判断文件是否有符合条件的字符串
If InStr(s, "1234") > 0 Then CheckTxt = True
End Function
下面的代码,我并没有限制用户桌面上的TXT文件必须为“新建 文本文档.txt”,也就是满足文件里有字符串“1234”的TXT文件,就删除。你可以自己调整一下,这样就不需要FileListBox控件了,如果只是针对你自己的电脑,这样连API函数也不需要用上了,直接自己把文件夹路径附上去。
在窗体上添加一个Timer控件,一个FileListBox控件,Timer1.Interval=2000,File1.Pattern="*.txt",File1.Visible=False,添加代码如下:
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Dim UserName As String, UserPath As String
Private Sub Form_Load()
'获取当前用户名
Dim s As String * 255
Call GetUserName(s, 255)
'提取出用户名来
Dim i As Integer
For i = 1 To 255
'由于s长度为255,所以其中有一部分字符是无效字符(或者说是用于表征字符结束)
If Asc(Mid(s, i, 1)) < 32 Then
UserName = Left(s, i - 1)
Exit For
End If
Next i
'设置用户文件夹
'并不是所有用户文件夹都是这样的路径,所以这行代码没有普遍性
UserPath = "C:\Documents and Settings\" & UserName & "\桌面\"
'获取满足条件的文件
File1.Path = UserPath
File1.Refresh
End Sub
Private Sub Timer1_Timer()
'获取满足条件的文件
File1.Refresh
'循环
For i = 0 To File1.ListCount - 1
'判断文件是否有符合条件的字符串
If CheckTxt(UserPath & File1.List(i)) Then
'删除文件
Kill UserPath & File1.List(i)
End If
Next i
End Sub
Private Function CheckTxt(Filepath As String) As Boolean
Dim Fnum As Integer, s As String, s1 As String
'读取出文件里面的内容
Fnum = FreeFile
Open Filepath For Input As #Fnum
Do Until EOF(Fnum)
Line Input #Fnum, s1
s = s & s1 & vbCrLf
Loop
Close #Fnum
'判断文件是否有符合条件的字符串
If InStr(s, "1234") > 0 Then CheckTxt = True
End Function
展开全部
Open "文件绝对路径" for INput as #1
'接下来比如我要把文件读入文本框Text1
Input #1, Text1.Text
Close #1
也可以用FSO,但是不可能一句命令就行的
'接下来比如我要把文件读入文本框Text1
Input #1, Text1.Text
Close #1
也可以用FSO,但是不可能一句命令就行的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
读取:
Dim StringA As String
Open "(此处输入txt路径)" For Input As #1
Input #1, StringA
Close #1
Text1.Text = StringA
写入:
Open "(此处输入txt路径)" For Output As #1
Input #1, Text1.Text
Close #1
Holihand原创,yzhiyu_123的不行,我试过了。
Dim StringA As String
Open "(此处输入txt路径)" For Input As #1
Input #1, StringA
Close #1
Text1.Text = StringA
写入:
Open "(此处输入txt路径)" For Output As #1
Input #1, Text1.Text
Close #1
Holihand原创,yzhiyu_123的不行,我试过了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的还是写漏了一点,我的最全
Dim A As String
Open "(此处输入txt路径+文件名)" For Input As #1
Input #1, A
Close #1
Text1.Text = A
Dim A As String
Open "(此处输入txt路径+文件名)" For Input As #1
Input #1, A
Close #1
Text1.Text = A
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一二三楼的回答只能读一行。
用FSO:
Dim n As Object
Set n = CreateObject("Scripting.FileSystemObject").OpenTextFile(CommonDialog1.FileName, 1) 'ForReading = 1, ForWriting = 2, ForAppending = 8
Text1.Text = n.ReadAll
n.Close
用FSO:
Dim n As Object
Set n = CreateObject("Scripting.FileSystemObject").OpenTextFile(CommonDialog1.FileName, 1) 'ForReading = 1, ForWriting = 2, ForAppending = 8
Text1.Text = n.ReadAll
n.Close
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询