Maxscript /无法在文本文件中间写入字符串
Maxscript / cant write string in middle of text file
大家好,我试过像这样在文本文件中间添加一些内容:
fs = openFile "D:\Projects\Exports\Map\info.txt" mode:"a+"
skipToString fs "line3"
skipToNextLine fs
print "Hello" to:fs
close fs
我的文本文件是这样的:
第 1 行
2号线
3号线
4号线
第 5 行
我想在第 3 行文本后添加 "hello"。但它总是将文本添加到文件末尾:
第 1 行
2号线
3号线
4号线
5号线
"Hello"
有人知道问题出在哪里吗?谢谢
mode:"a+"
将始终将文件追加到文件末尾。试试这个:
fs = openFile "D:\Projects\Exports\Map\info.txt" mode:"r+"
skipToString fs "line3"
format "Hello" to:fs
close fs
这会覆盖"line3"之后的字符,所以你需要使用substitutestring
或者别的什么。我将 print
更改为 format
,因为 print
在 "Hello" 之后添加了一个新行。不需要 skipToNextLine
,它将光标定位到文件中的下一行。
大家好,我试过像这样在文本文件中间添加一些内容:
fs = openFile "D:\Projects\Exports\Map\info.txt" mode:"a+"
skipToString fs "line3"
skipToNextLine fs
print "Hello" to:fs
close fs
我的文本文件是这样的:
第 1 行 2号线 3号线 4号线 第 5 行
我想在第 3 行文本后添加 "hello"。但它总是将文本添加到文件末尾:
第 1 行 2号线 3号线 4号线 5号线 "Hello"
有人知道问题出在哪里吗?谢谢
mode:"a+"
将始终将文件追加到文件末尾。试试这个:
fs = openFile "D:\Projects\Exports\Map\info.txt" mode:"r+"
skipToString fs "line3"
format "Hello" to:fs
close fs
这会覆盖"line3"之后的字符,所以你需要使用substitutestring
或者别的什么。我将 print
更改为 format
,因为 print
在 "Hello" 之后添加了一个新行。不需要 skipToNextLine
,它将光标定位到文件中的下一行。