在PHP或node.js中读取严重编码的JSON文件

我试图parsinghttp://www.spetnik.com/files/alerts.json – Chrome似乎做了一个很好的工作,如果我使用wget下载它,我可以在VIM中查看它。 但是,当试图用node.js或PHPparsing时,parsing失败。 我尝试了各种各样的东西,包括mb_convert_encoding,没有任何工作。 什么是parsing这个JSON最简单的方法?

试试iconv() 。 我没有mb_detect_encoding()mb_convert_encoding()运气,但iconv成功转换字符编码为UTF-8( json_decode仅适用于UTF-8编码的string)。

 $json = file_get_contents('http://www.spetnik.com/files/alerts.json'); $json = iconv( 'UCS-2', "UTF-8", $json ); print_r( json_decode( $json ) ); 

在这里我find了如何检测编码的方法:

 foreach( mb_list_encodings() as $chr ){ print_r( $chr ); print_r( mb_convert_encoding( $json, 'UTF-8', $chr ) ); }