2013-09-24 255 views
3

我有一个文件编码为UTF-8。我想将其更改为UTF-8 + BOM更改编码UTF8到UTF8 BOM与rebol

这是我写的,但它没有工作:

write/binary %mycontacts.csv insert read/binary %mycontacts.csv #{EFBBBF} 

我该怎么办?

回答

3

当进行处理的管道,INSERT的返回结果是你传入的系列位置:

>> str: "ution" 

>> print insert str {Rebol} 
ution 

请注意,如果使用一个中间变量(如上述),那么变量将指向手术后你的新插入内容的开始:

>> print str 
Rebolution 

如果你不想使用一个中间变量,而是希望得到您的插入内容的开始,你需要跳过的向后长度您插入的内容:

>> print skip insert str {Rebol} -5 
Rebolution 

但如果你知道你在一系列的头部插入,然后你可以使用HEAD:

>> print head insert str {Rebol} 
Rebolution 

所以,因为你在一系列的字节顺序的头部插入标记,以下应适用于您的情况:

write/binary %mycontacts.csv head insert read/binary %mycontacts.csv #{EFBBBF}