java 解析json相关
一json-lib.jar开发包使用依赖包
json-lib.jar开发包使用需要依赖包以下开发包:
* jakarta commons-lang 2.4
* jakarta commons-beanutils 1.7.0
* jakarta commons-collections 3.2
* jakarta commons-logging 1.1.1
* ezmorph 1.0.6
百度翻译接口实例代码:
package com.baidu.translate;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLDecoder;
import java.nio.Buffer;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class BaiduTranslate {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String body="条条道路通罗马";
String from="zh";
String to="en";
String result=getResult(body,from,to);
System.out.println("{"+result);
String content="{"+result;
String json=getDate(content);
System.out.println(json);
}
//百度平台(翻译接口)相关数据
public static String getResult(String body,String from ,String to){
String result="";
//拼接相关参数
String params="http://openapi.baidu.com/public/2.0/bmt/translate?client_id=cxE4PWzno4Zx13LAvHX7ND5j&q="+body+"&from="+from+"&to="+to;
try {
URL url = new URL(params);
URLConnection connection = url.openConnection();
//设置连接时间(10*1000)
connection.setConnectTimeout(10*1000);
//设置输出
connection.setDoOutput(true);
//设置输出
connection.setDoInput(true);
//设置缓存
connection.setUseCaches(false);
//outputstream-----输出流
InputStream inputstream=connection.getInputStream();
//缓存字符流
BufferedReader buffer = new BufferedReader(new InputStreamReader(inputstream));
//返回相关结果
StringBuilder builder=new StringBuilder();
while(buffer.read()!=-1){
builder.append(buffer.readLine());
}
//返回相关结果
result=builder.toString();
//缓存字符流关闭操作
buffer.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
//解析百度服务器平台返回的相关数据信息
public static String getDate(String result){
String date="";
JSONObject object=JSONObject.fromObject(result);
JSONArray array=object.getJSONArray("trans_result");
int length=array.size();
for(int i=0;i
JSONObject params=JSONObject.fromObject(array.get(i));
String str=params.getString("dst");
try {
str=URLDecoder.decode(str,"utf-8");
date=str;
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return date;
}
}
结果展示: