使用access的VBA能力,批量读取文件夹中的TXT文件,将TXT的文件名读取写入到access的“文章”表的“标题”字段,将TXT的文件内容读取写入到access的“文章”表的“正文”字段,其中TXT的默认编码为UTF-8,操作步骤:
1、新建一个Access数据库文件,文件中创建“文章”表,设置“标题”、“正文”两个字段

2、打开“数据库工具”》"Visual Basic"

3、创建模块,并输入以下代码

SubImportTxtFilesToAccess()
DimstrPathAsString
DimstrFileAsString
DimstrContentAsString
DimobjFSOAsObject
DimobjFolderAsObject
DimobjFileAsObject
DimdbAsDAO.Database
DimrsAsDAO.Recordset
DimobjStreamAsObject
'设置文件夹路径
strPath="C:\TextFiles\"
'创建文件系统对象
SetobjFSO=CreateObject("Scripting.FileSystemObject")
'获取文件夹对象
SetobjFolder=objFSO.GetFolder(strPath)
'获取Access数据库对象
Setdb=CurrentDb()
'获取文章表的记录集
Setrs=db.OpenRecordset("文章",dbOpenTable)
'遍历文件夹内的所有TXT文件
ForEachobjFileInobjFolder.Files
IfRight(objFile.Name,3)="txt"Then'检查文件后缀是否为TXT
strFile=objFile.Name
strContent=""
'读取文件内容
SetobjStream=CreateObject("ADODB.Stream")
objStream.Charset="UTF-8"
objStream.Open
objStream.LoadFromFileobjFile.Path
strContent=objStream.ReadText(-1)'指定编码方式为UTF-8
objStream.Close
rs.AddNew'新增一条记录
rs!标题=strFile'将文件名写入文章表的“标题”字段
rs!正文=strContent'将文件内容写入文章表的“正文”字段
rs.Update'提交记录
EndIf
NextobjFile
'关闭记录集
rs.Close
Setrs=Nothing
'关闭数据库对象
db.Close
Setdb=Nothing
'清空对象变量
SetobjFile=Nothing
SetobjFolder=Nothing
SetobjFSO=Nothing
MsgBox"导入完成。"
EndSub其中文件夹路径改为实际的路径即可。
4、运行创建好的VBA脚本

5、执行结果图

