(java 功能代码) 百度翻译接口

虾米姐 阅读:926 2021-04-01 10:07:35 评论:0
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<length;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; 
		 
	} 
	 
 
}


结果展示:

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号