主题:如何批量将文本文件的名字写入文本文件内
xyzz008
[专家分:140] 发布于 2009-03-27 16:25:00
例如:将12.txt的文件名12写入12.txt文件内的第一行
将123.txt的文件名123写入123.txt文件内的第一行
将1234.txt的文件名1234写入1234.txt文件内的第一行
将12345.txt的文件名12345写入12345.txt文件内的第一行
将123456.txt的文件名123456写入123456.txt文件内的第一行
也许有的文件名之间有空格!!!
回复列表 (共5个回复)
沙发
qjbzjp [专家分:8830] 发布于 2009-03-29 12:29:00
FOR i=1 TO ADIR(alj,"c:\temp\*.txt")
aljstr="alj("-TRANSFORM(i)-',1)'
allnamestr=&aljstr
namestr=CHRTRAN(allnamestr,".TXT","")
txtstr=FILETOSTR("c:\temp\"-&aljstr)
c_name="'"+"c:\temp\"+"&allnamestr"+"'"
STRTOFILE(STRTRAN(txtstr,txtstr,namestr+CHR(13)+CHR(10)+txtstr),&c_name)
NEXT
板凳
ihorse [专家分:970] 发布于 2009-03-29 12:47:00
使用justfile("123.txt")取得文件的主文件名到一个字符型变量中;
使用fopen打开123.txt文件
使用fwrite写入字符型变量到文件中。
3 楼
hw2007name [专家分:4790] 发布于 2009-03-29 13:13:00
Local cPath,nFileCount,aFile[1],cFile,cFileStr
cPath="g:\"
nFileCount=ADIR(aFile,addbs(cPath)+"*.txt")
FOR I=1 TO nFileCount
cFileStr=FileToStr(addbs(cPath)+aFile[I,1])
=StrToFile(JUSTSTEM(aFile[I,1])+CHR(13)+CHR(10)+cFileStr,addbs(cPath)+aFile[I,1])
ENDFOR
&&在TXT文件内容前写入文件名,并加入了回车换行符
&&注意上段代码没有加入文件是否正被使用的判断.
4 楼
xyzz008 [专家分:140] 发布于 2009-04-07 08:17:00
怎么不会实现我要的结果呀,是不是把你们代码做成prg程序和我的那些TXT文件放在一个文件夹里,然后运行程序?
还是谢谢各位老师!!
5 楼
qjbzjp [专家分:8830] 发布于 2009-04-07 10:00:00
把代码放到.prg文件中,把 “FOR i=1 TO ADIR(alj,"c:\temp\*.txt") ”这一句中的路径"c:\temp\*.txt"改为你存放TXT文件的路径。
然后运行。
我来回复