我将要复制的文件保存到 .dat 文件中,如下所示。
\Bin\a.exe
\Bin\b.dll
\Bin\c.dll
\Bin\d.dll
\Bin\e.dll
\Bin\f.dll
然后我想逐行读取 .dat 文件。我按如下代码(.nsi)逐行阅读。
ClearErrors
FileOpen $0 "CopyFileList.dat" r
loop:
FileRead $0 $1
Strcmp $1 "" done
StrCpy $varBinFileName $1
File /r "${TARGETDIR}\$varBinFileName"
goto loop
done:
FileClose $0
然后出现两个问题!!
1)读取变量本身的名称,而不是变量$varBinFileName的存储值。
因此,即使文件在那里,也无法找到该文件,因为它不是文件名。
2) 读取 .dat 文件时,“||” 被添加。
例如,读取第一行会产生以下结果:\Bin\a.exe||
我想得到删除“||”的结果 复制文件时使用它。
请让我知道是否有更好的方法来逐行读取 .dat 文件并将其复制到循环中,而不是我编写的代码。