如何把一个json文件转换成字符串
2个回答
展开全部
1、说明:
json文件本身就是字符串文件,使用open函数就可以得到文件字符串内容,如果要解析文件则使用python3通过json模块load函数来实现。
2、代码示例:
首先编写一个json文件j.txt,内容如下:
{"errno":1,"errmsg":"操作成功!","data":[]}
python代码如下:
import json
# 读取文件内容
whth open('j.txt', 'r') as fr:
print(fr.read()())
输出如下:
{"errno":1,"errmsg":"操作成功!","data":[]}
# 解析json文件
with open('j.txt', 'r') as fr:
o = json.load(fr)
print(o['errno'])
print(o['errmsg'])
print(len(o['data']))
输出如下:
1
操作成功!
0
3、函数说明:
load(fp, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
反序列化fp(一个.read()包含 - 支持类文件对象一个JSON文件),以一个Python对象。
object_hook是将与被调用的可选功能任何对象文本解码(一个``dict``)的结果。返回值object_hook将用来代替dict。此功能可用于实现自定义解码器(例如JSON-RPC级提示)。
object_pairs_hook是将与被调用的可选功能任何对象的结果与对的有序列表字面解码。该的返回值object_pairs_hook将用来代替dict。
此功能可用于实现依赖于定制解码器命令该键和值对被解码(例如,collections.OrderedDict会记得插入的顺序)。如果object_hook也定义了object_pairs_hook优先。
要使用自定义JSONDecoder子类,与cls指定它kwarg;否则JSONDecoder使用。
4、其它说明:
也可以使用json.loads函数来直接处理字符串,方法如下:
o=json.loads('{"errno":0,"errmsg":"操作成功!","data":[]}')
json文件本身就是字符串文件,使用open函数就可以得到文件字符串内容,如果要解析文件则使用python3通过json模块load函数来实现。
2、代码示例:
首先编写一个json文件j.txt,内容如下:
{"errno":1,"errmsg":"操作成功!","data":[]}
python代码如下:
import json
# 读取文件内容
whth open('j.txt', 'r') as fr:
print(fr.read()())
输出如下:
{"errno":1,"errmsg":"操作成功!","data":[]}
# 解析json文件
with open('j.txt', 'r') as fr:
o = json.load(fr)
print(o['errno'])
print(o['errmsg'])
print(len(o['data']))
输出如下:
1
操作成功!
0
3、函数说明:
load(fp, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
反序列化fp(一个.read()包含 - 支持类文件对象一个JSON文件),以一个Python对象。
object_hook是将与被调用的可选功能任何对象文本解码(一个``dict``)的结果。返回值object_hook将用来代替dict。此功能可用于实现自定义解码器(例如JSON-RPC级提示)。
object_pairs_hook是将与被调用的可选功能任何对象的结果与对的有序列表字面解码。该的返回值object_pairs_hook将用来代替dict。
此功能可用于实现依赖于定制解码器命令该键和值对被解码(例如,collections.OrderedDict会记得插入的顺序)。如果object_hook也定义了object_pairs_hook优先。
要使用自定义JSONDecoder子类,与cls指定它kwarg;否则JSONDecoder使用。
4、其它说明:
也可以使用json.loads函数来直接处理字符串,方法如下:
o=json.loads('{"errno":0,"errmsg":"操作成功!","data":[]}')
展开全部
1>jQuery插件支持的转换方式:
代码如下:
$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象
2>浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器:
代码如下:
JSON.parse(jsonstr); //可以将json字符串转换成json对象
JSON.stringify(jsonobj); //可以将json对象转换成json对符串
注:ie8(兼容模式),ie7和ie6没有JSON对象,推荐采用JSON官方的方式,引入json.js。
3>Javascript支持的转换方式:
eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号
注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。
4>JSON官方的转换方式:
http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;
可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。
代码如下:
$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象
2>浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器:
代码如下:
JSON.parse(jsonstr); //可以将json字符串转换成json对象
JSON.stringify(jsonobj); //可以将json对象转换成json对符串
注:ie8(兼容模式),ie7和ie6没有JSON对象,推荐采用JSON官方的方式,引入json.js。
3>Javascript支持的转换方式:
eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号
注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。
4>JSON官方的转换方式:
http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;
可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |