java中 inputStream怎样高效率的准换成xml和json对象,然后转换成map集合。
从微信接口中获取的返回数据,返回的是xml或者json的数据包,用inputStream或者String(不想用String,感觉效率没有inputStream高,另外还...
从微信接口中获取的返回数据,返回的是xml或者json的数据包,用inputStream或者String(不想用String,感觉效率没有inputStream高,另外还有可能乱码)来接受到它。选择的是inputStream接收,现在想把这个流转换成xml和json对象,再统一转换成map对象。重要的是从流到xml和json对象这一环节,有没有好的方案或者第三方的工具,请说详细点儿,谢谢。
注意不要生成中间本地文件,有没有好的方案或者第三方包。 展开
注意不要生成中间本地文件,有没有好的方案或者第三方包。 展开
4个回答
展开全部
如果要转换成XML,可以使用Transformer转换
DOMResult result;
InputStream in = null;
try {
in = connect.getInputStream();
result = new DOMResult();
Transformer transformer = TransformerFactory.newInstance()
.newTransformer();
transformer.transform(new StreamSource(in), result);
} finally {
if (in != null) {
in.close();
}
}
Document doc = (Document)result..getNode();
Element docElement = doc.getDocumentElement();
后面就是你自己解析了
DOMResult result;
InputStream in = null;
try {
in = connect.getInputStream();
result = new DOMResult();
Transformer transformer = TransformerFactory.newInstance()
.newTransformer();
transformer.transform(new StreamSource(in), result);
} finally {
if (in != null) {
in.close();
}
}
Document doc = (Document)result..getNode();
Element docElement = doc.getDocumentElement();
后面就是你自己解析了
追问
要大量get和post url接口,本来就是不想用这种方式解析返回数据,转了一圈还是得这样。没办法了,写完了测试测试效率行不行。。。不行再想办法。
2014-07-14 · 知道合伙人数码行家
关注
展开全部
您好,提问者:
1、使用缓冲流:BufferedInputStream。
2、或者转为缓冲字符流:
BufferedReader br = new BufferedReader(new InputStreamReader(xx));
1、使用缓冲流:BufferedInputStream。
2、或者转为缓冲字符流:
BufferedReader br = new BufferedReader(new InputStreamReader(xx));
更多追问追答
追问
然后呢?怎么转换成第三方包中的xml对象,
追答
不建议转为xml对象,建议转为json装到map中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用xstream吧。一站式搞定。
更多追问追答
追问
xstream只适合在xml和java对象之间转换啊,具体方法是什么?能不能详细点儿
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
解析xml,为啥不用dom4j呢
追问
想找一个xml和json都能解决的第三方包,现在看来只能用dom4j了。json用别的东西。
追答
用dom4j可以的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |