我无法正确看到cjk字符。似乎它被误认为是ISO-8859编码。我认为UTF-8编码是合适的一种。有人知道如何解决该问题。
$ wget http://yjs.cd120.com/daoshi.html
$ grep 'selectid="99"' daoshi.html
Binary file daoshi.html matches
$ file daoshi.html
daoshi.html: HTML document text, ISO-8859 text, with very long lines, with CRLF line terminators
答案 0 :(得分:2)
首先,您必须确定通过wget
(或为此curl
)获得的文件的实际编码是什么。
发出命令:
grep 'Content-Type' daoshi.html
将显示:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
其中charset=gb2312
表示html文件以简体中文(GB 2312)编码。
然后,您可以使用iconv
命令将文件转换为新的UTF-8版本:
iconv -f gb2312 -t utf-8 daoshi.html >daoshi-utf8.html
最后,根据您的需要,您可能需要调整文件开头的meta
标记内容以匹配新的编码,例如使用sed
:
sed s/charset=gb2312/charset=utf-8/ daoshi-utf8.html >daoshi-utf8-final.html
答案 1 :(得分:0)
https://www.w3.org/International/questions/qa-changing-encoding
摘要:
第1步:将数据另存为UTF-8
第2步:声明页面中的编码
<meta charset="utf-8"/>
第3步:确保您的服务器执行正确的操作