如何根据实体得知字符集


用的是 apache 的 ftp 包去连接 windows 上的一个 filezilla 服务器
不论怎么修改 setContentEncoding 的值,都无法获取到正确的字符集

使用浏览器访问时,发现他们用的实体:

   
  <script>addRow("\u5929\u7FFC\u6D4B\u7F51\u5907\u4EFD.zip","%E5%A4%A9%E7%BF%BC%E6%B5%8B%E7%BD%91%E5%A4%87%E4%BB%BD.zip",0,"42.9 MB","11-10-30 \u4E0A\u534812:00:00");</script>
 

我应该如何去判断该实体是什么字符集呢?

java 网络编程

心直口快的李森 10 years, 9 months ago

事后发现设置成 UTF-8 又解决乱码的问题了
可能是当时有缓存神马的问题吧,比较讨厌的字符集

至于说是实体的字符集,这几天通过学习 Python 有了写新的变通。
诸如 \uHHHH 这类的是 Unicode 的字符,低两位一般是 ASCII 直接映射过来的,
所以,知道这个之后,直接将这种类型的数据由 Unicode 转换成对应的标准标准字符即可。

如果是 %HH 类型的字符,是由 URLEncode 搞出来的实体字符,再通过 URLDecode 就可转义回去,问题就可以解决了

Alert answered 10 years, 9 months ago

Your Answer