basc 发表于 2013-2-15 15:58:22

获取d:\123里面的根目录的所有文件的文件名(包含完整路径)并写入TXT

获取d:\123里面的根目录的所有文件的文件名(包含完整路径)并写入TXT,之后读取TXT最后一行的文件路径!知道要用到
_FileListToArray
FileOpen
FileWrite
FileRead
但是就是用不起来啊。

ebhb 发表于 2013-2-15 16:12:17

要用递归来寻找子目录里面的东西,原来用TC做过

ebhb 发表于 2013-2-15 16:12:53

本级目录的很好找,用
; 显示当前目录中所有文件的文件名
$search = FileFindFirstFile("*.*")

; 检查搜索是否成功
If $search = -1 Then
    MsgBox(0, "错误", "没有文件/目录 匹配搜索")
    Exit
EndIf

While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
   
    MsgBox(4096, "文件:", $file)
WEnd

; 关闭搜索句柄
FileClose($search)
这个就行了

veket_linux 发表于 2013-2-15 16:37:21


#include <File.au3>
$targetdir = "D:\123"
$txtfile = @DesktopCommonDir & "\result.txt"
$handle = FileOpen($txtfile, 2)
$buffer = ""
$files = _FileListToArray($targetdir, "*", 1)
If @error Then
        $buffer = ""
Else
        For $i = 1 To $files
                $buffer &= $files[$i] & @CRLF
        Next
EndIf
FileWrite($handle, $buffer)
FileClose($handle)

kevinch 发表于 2013-2-15 16:48:16

$targetdir = "z:\temp"
$txtfile = @MyDocumentsDir&"\result.txt"
RunWait(@ComSpec&" /c dir /s/b """&$targetdir&""">"""&$txtfile&"""","",@SW_HIDE)
MsgBox(0,"","OK")这个试下

417252056 发表于 2013-2-16 09:21:51

新手学习学习

xms77 发表于 2013-2-16 10:47:25

回复 4# veket_linux
不知道楼主要不要提取多级子目录的文件全名?

haijie1223 发表于 2013-2-16 13:35:09

#include <file.au3>
Dim $filelist, $dir
$dir = "d:\123"
FileDelete("file.txt")
$filelist = _FileListToArray($dir)
If Not @error Then       
        For $i = 1 To $filelist
                FileWriteLine(@ScriptDir & "\file.txt", $dir & "\" & $filelist[$i])
        Next
EndIf

Dim $path = FileReadLine("file.txt", $filelist)
MsgBox(0, "", $path)

basc 发表于 2013-2-16 21:31:26

回复 4# veket_linux


    可以写入TXT但是,还没读取TXT最后一行内容呢··

basc 发表于 2013-2-16 21:31:51

回复 5# kevinch


    这个只是写入吧。没有读取最后一行!

basc 发表于 2013-2-16 21:32:21

回复 8# haijie1223


    好像貌似,压根没用。。。

kevinch 发表于 2013-2-16 22:00:26

$targetdir = "z:\temp"
$txtfile = @MyDocumentsDir&"\result.txt"
RunWait(@ComSpec&" /c dir /s/b """&$targetdir&""">"""&$txtfile&"""","",@SW_HIDE)
$arr=StringSplit(FileRead($txtfile),@CRLF,1)
MsgBox(0,"",$arr[$arr-1]){:face (189):}

haijie1223 发表于 2013-2-17 07:49:23

回复 11# basc


    ~~请无视掉~

sango 发表于 2013-2-21 23:16:20

学习了,有用。。。

yufei8051 发表于 2015-1-18 11:35:36

$File = fileopen('C:\logfile.log',1)    ;文本添加到文件尾
$log_text = "dfkjsfldjfwofejfsj"
filewrite($File, $log_text)
fileclose($file)
页: [1]
查看完整版本: 获取d:\123里面的根目录的所有文件的文件名(包含完整路径)并写入TXT