我正在写一个阿拉伯语网站,并将模板保存为UTF8(使用记事本++),这会在每个文件/模板包含一个额外的新行,是否有解决此问题而无需以ascii格式保存文件?
谢谢。答案 0 :(得分:6)
我认为您可以尝试打开文件,然后选择“无BOM的UTF-8”作为编码,然后保存。这可能解释了额外的界限。
答案 1 :(得分:0)
首先,您必须掌握以下信息:
通常EOL字符是“\ n”元字符,表示“新行”。这几乎适用于任何基于unix的系统,它也会将列指针返回到行的开头。基于Windows的系统没有第二种行为,向行指针添加位置,但列指针将保持不变。因此,要解决此问题,基于Windows的系统会在“\ n”之前使用额外的“\ r”元字符。 “\ r”代表“回车”,是指古代技术。它的功能是将列指针重置为行的开头。
在二进制处理说明中,“你应该买一个byke。\ rYou shalt”字符串应翻译成“你应该买一个byke”。因为在“\ r”列位置,解释器会将列指针重置为行的开头,并且将开始用紧跟在(“\ r”元字符)之后的位序列覆盖。
因此,在基于Windows的系统中,您应该使用“\ r \ n”来回车和换行。这在基于Unix的系统上也表现良好。
请注意转移...检查您的来源和目的地字符集。如果它们彼此不同,则可能导致换行或加倍换行。你也可以在字符串中找到一些损坏的字符。
原件:
<div id='tmp'>
deja vú
</div>
倍增:
<div id='tmp'>
deja vú
</div>
修剪:
<div id='tmp'> deja v� </div>