如何使用NSIS写入文件的开头?
我有一个大文本文件,因此无法使用FileRead
,因为它看起来有1024个字符的限制
我尝试使用FileSeek
从文件的开头设置指针-30,但我想这是不可能的,所以它不起作用。
如果我按原样使用FileWrite
,它会写入文件的开头,删除尽可能多的字符
因为它从文件的顶部写。
任何帮助?
答案 0 :(得分:0)
您可以将此脚本用于write to a specified line number中的Text Files Manipulation Functions。 1024个字符的限制是由默认NSIS构建的最大字符串长度引起的(有special build扩展限制)
答案 1 :(得分:0)
'强力'方法应该有效。
所以你可以这样做(测试过):
FileOpen $0 "SourceFile.txt" r
FileOpen $1 "TargetFile.txt" w
; First add the new text
FileWrite $1 "The Text to add to the start of the file."
; Copy File byte by byte
loop:
ClearErrors
FileReadByte $0 $2
IfErrors exit
FileWriteByte $1 $2
Goto loop
exit:
FileClose $0
FileClose $1
如果你需要目标文件来代替源文件,你可以在宏MoveFileFolder的帮助下移动它。