Ⅰ 解析json数据,用什么第三方库,方便一点的,最好有demo
看你是什么语言了,姑且算您是java语言。
可以看看这里对象,List、Map等转换:
http://www.sojson.com/blog/100.html
如果内你有耐心可以看看这容里:
http://www.sojson.com/tag_json.html
Ⅱ 阿里巴巴的json解析框架怎么用
说起Json 解析,有很多方法,无论是出自Google 的Gson也好,还是来自其他的某某,想必大家都很熟悉。今日在github上闲逛,偶遇 一 json 解析库,看起来很不错,据说是目前最快的解析JOSN 方案。该东东为何神器,他就是来自于阿里团队的 fastjson.
为了方便起见,参考如下代码。
用maven 的同学就方便多了,直接双击打开你的pom.xml 文件,添加如下依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.1.36</version>
</dependency>
构建一下就OK了。
下面来具体看看:
ENCODE:
import com.alibaba.fastjson.JSON;
Group group = new Group();
group.setId(0L);
group.setName("admin");
User guestUser = new User();
guestUser.setId(2L);
guestUser.setName("guest");
User rootUser = new User();
rootUser.setId(3L);
rootUser.setName("root");
group.getUsers().add(guestUser);
group.getUsers().add(rootUser);
String jsonString = JSON.toJSONString(group);
System.out.println(jsonString);
Ⅲ Java使用json-lib库解析JSON数据,求大神指点
你这个JSON数据 都有问题 应该是这样
Stringlistjson="[{'content':{'content':'你好','code':1},'time':'2013-12-10'},{'content':{'content':'我是小明','code':2},'time':'2013-12-10'}]";
你自己那个里面 多了 几个 " 号;就在你那个 {旁边。
下面是取值代码
Stringlistjson="[{'content':{'content':'你好','code':1},'time':'2013-12-10'},{'content':{'content':'我是小明','code':2},'time':'2013-12-10'}]";
JSONArrayarray=JSONArray.fromObject(listjson);
for(Objectobject:array){
JSONObjectjsonobject=JSONObject.fromObject(object);
Stringcontent=jsonobject.getString("content");
Stringtime=jsonobject.getString("time");
JSONObjectjsoncontent=JSONObject.fromObject(content);
Stringcontent2=jsoncontent.getString("content");
Integercode=jsoncontent.getInt("code");
System.out.println(time+"_"+content2+"_"+code);
}
Ⅳ 如何实现一个简单的json的库,该库具有生成、解析json等功能。
就是一个文本操作啊,你要自己创建一个对象,用来保存从JSON中解析出来的对象内容。反过来生成JSON文件就是用户向这个对象内写入内容,然后根据写入的内容来生成JSON文件。
Ⅳ java解析json格式文件,再保存在数据库怎么做
1:定义一个实体类
2:用json lib将json字符串转为Java对象
3:用jdbc或hibernate将java对象存入数据库
直接读写文件,再把读出来的文件内容格式化成json,再用JDBC、Mybatis或者其他框架将json数据存入数据库。
假设实体类是这样的:
publicclassElectSet{
publicStringxueqi;
publicStringxuenian;
publicStringstartTime;
publicStringendTime;
publicintmenshu;
publicStringisReadDB;
//{"xueqi":,"xuenian":,"startTime":,"endTime":,"renshu":,"isReadDB":}
publicStringgetXueqi(){
returnxueqi;
}
publicvoidsetXueqi(Stringxueqi){
this.xueqi=xueqi;
}
publicStringgetXuenian(){
returnxuenian;
}
publicvoidsetXuenian(Stringxuenian){
this.xuenian=xuenian;
}
publicStringgetStartTime(){
returnstartTime;
}
publicvoidsetStartTime(StringstartTime){
this.startTime=startTime;
}
publicStringgetEndTime(){
returnendTime;
}
publicvoidsetEndTime(StringendTime){
this.endTime=endTime;
}
publicintgetMenshu(){
returnmenshu;
}
publicvoidsetMenshu(intmenshu){
this.menshu=menshu;
}
publicStringgetIsReadDB(){
returnisReadDB;
}
publicvoidsetIsReadDB(StringisReadDB){
this.isReadDB=isReadDB;
}
}
有一个json格式的文件,存的信息如下:
Sets.json:
{"xuenian":"2007-2008","xueqi":"1","startTime":"2009-07-1908:30","endTime":"2009-07-2218:00","menshu":"10","isReadDB":"Y"}
具体操作:
/*
*取出文件内容,填充对象
*/
publicElectSetfindElectSet(Stringpath){
ElectSetelectset=newElectSet();
Stringsets=ReadFile(path);//获得json文件的内容
JSONObjectjo=JSONObject.fromObject(sets);//格式化成json对象
//System.out.println("------------"jo);
//Stringname=jo.getString("xuenian");
//System.out.println(name);
electset.setXueqi(jo.getString("xueqi"));
electset.setXuenian(jo.getString("xuenian"));
electset.setStartTime(jo.getString("startTime"));
electset.setEndTime(jo.getString("endTime"));
electset.setMenshu(jo.getInt("menshu"));
electset.setIsReadDB(jo.getString("isReadDB"));
returnelectset;
}
//设置属性,并保存
publicbooleansetElect(Stringpath,Stringsets){
try{
writeFile(path,sets);
returntrue;
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
returnfalse;
}
}
//读文件,返回字符串
publicStringReadFile(Stringpath){
Filefile=newFile(path);
BufferedReaderreader=null;
Stringlaststr="";
try{
//System.out.println("以行为单位读取文件内容,一次读一整行:");
reader=newBufferedReader(newFileReader(file));
StringtempString=null;
intline=1;
//一次读入一行,直到读入null为文件结束
while((tempString=reader.readLine())!=null){
//显示行号
System.out.println("line"line":"tempString);
laststr=laststrtempString;
line;
}
reader.close();
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(reader!=null){
try{
reader.close();
}catch(IOExceptione1){
}
}
}
returnlaststr;
}
将获取到的字符串,入库即可。
Ⅵ Json数据解析,下面数据如何解析
你的 json 格式也贴错了
{
"data": {
"name": "用户登录",
"data_set": [
{
"user_id": "xiaozhou",
"password": "123"
}
]
}
}
使用Newtonsoft.Json 来操纵
Newtonsoft.Json 是.NET 下开源的json格式序列号和反序列化的版类库
官方网站: http://json.codeplex.com/
新建一个权 wimform 窗体程序,加入richTextBox 、button 控件
Ⅶ 有没有ubuntu的json解析工具
首先安装libjson的c库
#apt-get install libjson0-dev libjson0
安装好后查看/usr/include/json下是否有头文件,有就对了!
gcc -o json-demo -g json-demo.c -std=c99 -I/usr/include/json -L/usr/lib/i386-linux-gnu/ -ljson
注意:
1、json-demo和json-demo.c参数需要在前面,不能在后面,见错误1
2、需要就爱如-std=c99,代码中需要,也可以用-std=gnu99,见错误2
3、-I是json的头文件的路径
4、-L是json库所在位置,这个路径可能根据系统不同而不同,建议用find / -name "libjson*"找到位置
5、-ljson不可省略,尽量放在最后,没有这个参数会出现错误1的现象
Ⅷ 适用于android的优秀的json解析库有哪些
开始项目中抄使用的是fastjson,而且袭作者也说比gson快6倍,甚至嘲讽gson的g代表了“龟速”的意思,可是我自己的简单测试是,比较简陋的测试,一个10万条数据的json文件,gson比fastjson快一些,快了大概80%的样子。虽然测试可能不科学,但数据确实是我们项目中的实际数据,所以……
另外,也许是我使用真的有问题?使用的新版本的fastjson性能反而比旧的要低很多(1.2.7,1.1.44-android,1.1.33-android里面,1.1.33反而是最快的)。
然而,最终我选择了logan square,它的速度比fastjson快了2-3倍(自测),嗯,推荐Android开发者们使用Logan Square。
Ⅸ 如何使用JSON Framework库解析与生成json数据
JSON
Framework设置工作
为了在自己的工程项目中使用json framework框架库,必须将其导入到工程项目组中。即把JSON Framework库的Classes文件夹下所有的文件导入添加进项目中,然后在具体使用json framework的代码实现文件中添加#import
"SBJson.h"导入此头文件。
使用方式——解析JSON字符串:JSONValue
1. 首先取得JSON字串
NSURL *url = [NSURL URLWithString:@"http://graph.facebook.com/cyberbuzz"];
NSString *jsonString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
复制代码
2. 调用json framework提供的解析方法来解析这个字串,将结果存储在NSDictionary字典中
NSDictionary *items = [jsonString JSONValue];
注意:JSONValue解析后的返回值是
NSDictionary 或者是 NSArray,所以上例最好是定义返回值为id。结合上面两步我们可以构建一个方法来实现:
- (id)fetchJSONValueForURL:(NSURL *)url
{
NSString *jsonString = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
// NSLog(@"json value %@:",jsonString);
id jsonValue = [jsonString JSONValue];
[jsonString release];
return jsonValue;
}
复制代码
如果是为了得到NSDictionary类型,可以如下:
- (NSDictionary *)fetchJSON:(NSString *)text
{
NSString *urlString = [NSString stringWithFormat:text];
NSURL *url = [NSURL URLWithString:urlString];
//NSLog(@"fetching data");
return [self fetchJSONValueForURL:url];
}
复制代码
3. 可以通过NSLog()来确认解析的结果,或是通过objectForKey等方法来取得JSON中的值
NSLog(@"Parsed JSON:%@",[items description]);
使用方式——将NSDictionary字典数据编码成JSON字符串:JSONFragment
Ⅹ Java中哪个JSON库的解析速度是最快的
FastJson效率最高,是阿里巴巴开源 的Json处理工具包,包括“序列化”和“反序列化”两部分,它内具备如下特容征:
速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson;
功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE 5.0以上版本;支持Android;