经过多次尝试,我坚持这个,我有一个项目数组,我试图将其输出到一个文件,但问题是它一次写入并忽略换行符。我开始怀疑rebol是否具有如此简单的能力。 file1.txt包含多行
myArray: []
foreach line read/lines %file1.txt [
append myArray line
]
write %file2.txt myArray
这不起作用,所有内容都写在一行
fp: open/new %file2
foreach line myArray [insert fp line]
close fp
这两种方式都不起作用“不能在端口上使用插入!”
我不是要复制文件,上面只是对我要做的事情的演示。
答案 0 :(得分:3)
Rebol保持原样。但是在读取/读取行之后,您只需获得一个没有换行符的项目块。如果你想要一个用换行符分隔的行项目块,你应该用精炼写入/行再次写入它们,Rebol再次添加换行符。
myArray: []
foreach line read/lines %file1.txt [
append myArray line
]
write/lines %file2.txt myArray
答案 1 :(得分:1)
当您使用read/lines
时,Rebol会丢弃行结束数据,并为您提供block
strings
。如果您想将block
写入文件,可以在newline
添加到每一行。
myArray: []
foreach line read/lines %file1.txt [
append myArray join line newline
}
write %file2.txt myArray