本文目录一览:
- 1、怎样读取json文件,并且把内容赋值给变量var
- 2、java Httpserver 传递过来的json里面的汉字 接收到的每个汉字对应一个问号“?” 请问该如何解决这个问题
- 3、php 输出json及显示json中的中文汉字详解及实例
- 4、为什么在解析json中汉字解析不了
- 5、Android读取本地json文件的方法
怎样读取json文件,并且把内容赋值给变量var
以ajax为例,假设你某次ajax定义为:
var arra;
$.ajax({
type : "POST", //提交方式
url : "url",//路径
data : {
"org.id" : "${org.id}"
},//数据,这里使用的是Json格式进行传输
success : function(result) {//返回数据根据结果进行相应的处理
console.info(result);//可以把result打出来康康
arra = result.汉字;
}
});
如上例,返回的result就是你的json,你直接从result中就能取到值了
java Httpserver 传递过来的json里面的汉字 接收到的每个汉字对应一个问号“?” 请问该如何解决这个问题
最简单的方法就是url传递的时候进行加密处理,接收的时候再转换回来,这样就没有乱码了。其实最好的办法还是写个编码转换过滤方法,这样就不需要每次都要转换了
php 输出json及显示json中的中文汉字详解及实例
php
输出json及显示json中的中文汉字
在php中,我们经常需要将数组输出json,只需要使用json_encode函数处理一下数组即可,但有的时候数组里面有中文,使用json_encode函数处理后中文字符被编码成了Unicode,如何才能在json中显示中文呢?请看下文。
首先介绍一下php输出json格式:
一种最简单的用法,就是把数组直接输出为json,如下:
?php
$arr
=
array('p1'='ni"hao','p2'=2,'ch'='码农你好!');
$json
=
json_encode($arr);
echo
$json;
?
输出的结果为:
{"p1":"ni\"hao","p2":2,"ch":"\u7801\u519c\u4f60\u597d\uff01"}
这里要注意:
双引号在json中会被自动编码为\",这个很好理解,js中字符串中是不允许出来单引号、双引号和反斜杠的。
中文字符被编码成了Unicode
如果是写接口,那直接这样输出就够了,中文无需去做处理。等到了客户端,再去把Unicode的中文转成汉字即可。但如果要在服务器端直接输出汉字出来,那我们可以做如下处理。
?php
$arr
=
array('p1'='nihao','p2'=2,'ch'='码农你好!');
$json
=
json_encode($arr);
echo
decodeUnicode($json);
function
decodeUnicode($str){
return
preg_replace_callback('/\\\\u([0-9a-f]{4})/i',
create_function(
'$matches',
'return
mb_convert_encoding(pack("H*",
$matches[1]),
"UTF-8",
"UCS-2BE");'
),
$str);
}
?
输出:
{"p1":"ni\"hao","p2":2,"ch":"码农你好!"}
这个操作很简单,其实就是把输出结果匹配一下,把Unicode还原成了汉字。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
为什么在解析json中汉字解析不了
{"RESULT":100,"MESSAGE":"提交成功!","BATCHID":86117}
缺少引号,最好把数字也用引号括起来
Android读取本地json文件的方法
本文实例讲述了Android读取本地json文件的方法。分享给大家供大家参考,具体如下:
1、读取本地JSON ,但是显示汉字乱码
public static String readLocalJson(Context context, String fileName){ String jsonString=""; String resultString=""; try { BufferedReader bufferedReader=new BufferedReader(new InputStreamReader( context.getResources().getAssets().open(fileName))); while ((jsonString=bufferedReader.readLine())!=null) { resultString+=jsonString; } } catch (Exception e) { // TODO: handle exception } return resultString;}
2、读取本地JSON,显示汉字正确,txt文件设置时UTF-8,UNIX
public static String readLocalJson(Context context, String fileName){ String jsonString=""; String resultString=""; try { InputStream inputStream=context.getResources().getAssets().open(fileName); byte[] buffer=new byte[inputStream.available()]; inputStream.read(buffer); resultString=new String(buffer,"GB2312"); } catch (Exception e) { // TODO: handle exception } return resultString;}