Office中国论坛/Access中国论坛
标题: [分享][下载]读取和写入文本文件内容 [打印本页]
作者: fan0217 时间: 2006-3-25 04:04
标题: [分享][下载]读取和写入文本文件内容
[attach]16667[/attach]
以下是写入和读取文本文件函数:
Public Function WriteTxtFile(ByVal strPathName As String, _
ByVal strWriteText As String, ByVal blnOption As Boolean) As Boolean
'===============================================================================
'-函数名称: WriteTxtFile
'-功能描述: 写入文本文件内容
'-输入参数说明: 参数1: 必选 strPathName As String 文件名(含路径)
' 参数2: 必选 strWriteText As String 要写入的文本内容
' 参数3: 必选 blnOption As Boolean 写入文本的方式
' True:追加写入 false:覆盖写入
'-返回参数说明: 返回将内容写入文本文件是否成功
'-使用语法示例: Call WritetxtFile("落日楼头,断鸿声里,江南游子.....")
'-参考: Wanshan在Access爱好者论坛发表的文章
'-使用注意:
'-兼容性: 2000,XP,2003
'-作者: fan0217@163.com
'-更新日期: 2006-03-24
'===============================================================================
On Error GoTo Err_WriteTxtFile
Dim lngHandle As Long '句柄
WriteTxtFile = False
lngHandle = FreeFile() '取得句柄
If blnOption Then
Open strPathName For Append As lngHandle '打开文件 追加写入
Else
Open strPathName For Output As lngHandle '打开文件 覆盖写入
End If
Print #lngHandle, strWriteText '写入文本
Close lngHandle '关闭文件
WriteTxtFile = True
Exit_Err_WriteTxtFile:
Exit Function
Err_WriteTxtFile:
WriteTxtFile = False
MsgBox Err.Description
Resume Exit_Err_WriteTxtFile
End Function
Public Function ReadTxtFile(ByVal strPathName As String) As String
'===============================================================================
'-函数名称: ReadTxtFile
'-功能描述: 读取文本文件内容
'-输入参数说明: 参数1: 必选 strPathName As String 文件名(含路径)
'-返回参数说明: 返回文本文件内容
'-使用语法示例: Msgbox ReadTxtFile("c:\b.txt")
'-参考: Wanshan在Access爱好者论坛发表的文章
'-使用注意:
'-兼容性: 2000,XP,2003
'-作者: fan0217@163.com
'-更新日期: 2006-03-24
'===============================================================================
On Error GoTo Err_ReadTxtFile
Dim lngHandle As Long '文件句柄
Dim strLine As String '在循环中存放每行的内容
lngHandle = FreeFile() '获得文件的句柄
'For后面的参数表示以何种方式打开文件
'Input是读取,Output是覆盖写入,Append是追加写入
Open strPathName For Input As lngHandle
Do While Not EOF(lngHandle) '循环直到文件尾
Line Input #lngHandle, strLine '每次读取一行存放在strLine变量中
'每次读取都把所读到的内容连接到strAll变量,
'由于Line Input去掉了换行符,所以这里补上
ReadTxtFile = ReadTxtFile & strLine & vbCrLf
Loop
Close lngHandle '关闭文件
Exit_Err_ReadTxtFile:
Exit Function
Err_ReadTxtFile:
MsgBox Err.Description
Resume Exit_Err_ReadTxtFile
End Function
[此贴子已经被作者于2006-3-25 19:15:51编辑过]
作者: andymark 时间: 2006-3-25 04:20
不错
作者: 宿命的风 时间: 2006-3-25 17:24
感谢分享!
作者: george 时间: 2006-3-25 18:39
可做为帮助的新写法
作者: qlm 时间: 2006-3-25 19:54
正是我要的
又可以学下API,真是太好了.
作者: fan0217 时间: 2006-3-26 03:17
以下函数同样可以实现读取文本文件功能.
Public Function ReadTxtFileA(ByVal strPathName As String) As String
'===============================================================================
'-函数名称: ReadTxtFileA
'-功能描述: 读取文本文件内容 功能和使用方法同ReadTxtFile函数
'-输入参数说明: 参数1: 必选 strPathName As String 文件名(含路径)
'-返回参数说明: 返回文本文件内容
'-使用语法示例: Msgbox ReadTxtFile("c:\b.txt")
'-参考:
'-使用注意:
'-兼容性: 2000,XP,2003
'-作者:
'-更新日期:
'===============================================================================
On Error GoTo Err_ReadTxtFile
Dim strFile As String
Open strPathName For Input As #1
ReadTxtFile = ""
strFile = ""
Do While Not EOF(1)
Line Input #1, strFile
If ReadTxtFile = "" Then
ReadTxtFile = strFile
Else
ReadTxtFile = ReadTxtFile & vbCrLf & strFile
End If
Loop
Close #1
Exit_Err_ReadTxtFile:
Exit Function
Err_ReadTxtFile:
MsgBox Err.Description
Resume Exit_Err_ReadTxtFile
End Function
作者: jd3222308 时间: 2006-3-27 04:44
你好,你给我的示例文件没有密码啊,请回复可以吗?
作者: wu8313 时间: 2006-3-27 05:20
把 文本 再写入表中,不就是更好 了吗?
作者: fan0217 时间: 2006-3-27 05:25
那很容易实现的,所以没有加入该功能.
作者: wu8313 时间: 2006-3-28 04:33
文本文件的 多行和多列 分别写入 到表的多行和多列 ,我感觉还是有一些难度的。
有空的 时候我会考虑来尝试完成。
作者: fan0217 时间: 2006-3-28 05:13
读取文本文件是一行一行的读取的,在读取一行就写一行不就解决了吗.
[此贴子已经被作者于2006-3-27 21:13:57编辑过]
作者: wu8313 时间: 2006-3-28 05:15
文本中如果有多列的话,要麻烦一些的。
作者: fan0217 时间: 2006-3-28 05:17
读取行的同时进行拆分,然后写入.
作者: 搞不定 时间: 2006-4-12 05:22
呵呵,不错的代码
作者: mchgo 时间: 2006-6-27 05:43
好
作者: mchgo 时间: 2006-6-27 05:44
多发表这样的知识嘛!
作者: mchgo 时间: 2006-6-27 05:46
多顶!
作者: xlonger 时间: 2006-7-23 05:02
用这个写入函数后,新的文本文件最后有个空行,如何取消?
作者: Sooloom 时间: 2007-5-31 17:31
学习学习,很好
作者: shaoyong99 时间: 2007-6-22 06:31
支持一下
作者: sysyj1030 时间: 2007-9-25 13:35
学习学习学习学习学习学习学习
作者: wang_jeffson 时间: 2008-4-8 23:35
[:22]
作者: 13912668356 时间: 2008-4-11 09:00
q sdsfjdfdsfjdsifjsdjffjsddjfdfdsjfjsjj
作者: yihesmxx 时间: 2011-5-17 11:00
学习学习
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) |
Powered by Discuz! X3.3 |