`
lpw14
  • 浏览: 10185 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在android中使用google翻译

 
阅读更多
package com.eg.android.test;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

import org.json.JSONObject;

import android.util.Log;

public class Translate {
	private static final String TAG = "Translate";

	private static final String ENCODING = "UTF-8";
	private static final String TRANS_URL = "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=";
	private static final String LANGPAIR_TEXT = "&langpair=";
	private static final String LANGPAIR_SEPARTOR = "%7C";

	public static String retrieveTranslation(String text, String from, String to) {
		String result = null;
		HttpURLConnection conn = null;
		try {
			StringBuilder strBuilder = new StringBuilder();
			String url = strBuilder.append(TRANS_URL)
					.append(URLEncoder.encode(text, ENCODING))
					.append(LANGPAIR_TEXT).append(from)
					.append(LANGPAIR_SEPARTOR).append(to).toString();
			Log.d(TAG, "Connecting to " + url);
			
			conn = (HttpURLConnection) new URL(url).openConnection();
			
			String respStr = getResponseString(conn.getInputStream());

			JSONObject json = new JSONObject(respStr);
			result = ((JSONObject) json.get("responseData"))
					.getString("translatedText");
		} catch (Exception e) {
			Log.e(TAG, "translation fail!!");
		} finally { 
			try {
				if(conn != null) {
					conn.getInputStream().close();
					if (conn.getErrorStream() != null) 
						conn.getErrorStream().close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
        }
		return result;
	}

	private static String getResponseString(InputStream inputStream) {
		StringBuilder outputBuilder = new StringBuilder();
		BufferedReader reader = null;
		try {
			String str = null;
			if (inputStream != null) {
				reader = new BufferedReader(new InputStreamReader(inputStream,
						ENCODING));
				while ((str = reader.readLine()) != null) {
					outputBuilder.append(str);
				}
			}
		} catch (Exception e) {
			Log.e(TAG,"[google-api-translate-java] Error reading translation stream.");
		} finally {
			try {
				if (reader != null)
					reader.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return outputBuilder.toString();
	}

}


String res = Translate.retrieveTranslation("将这行中文翻译为英文", "zh-CN", "en");
分享到:
评论

相关推荐

    Android中文翻译组——Android中文合集(6)

    这个合集主要涵盖了Android开发中的多个重要知识点,由Android中文翻译组精心编译和翻译,旨在为国内开发者提供更易理解和使用的中文资源。以下是对其中一些关键概念和技术的详细解读: 1. **Android系统架构**:...

    Android谷歌翻译代码实例

    在Android应用开发中,集成谷歌翻译API可以为用户提供便捷的语言转换功能。本示例将详细介绍如何在Android项目中实现谷歌翻译的功能,以便用户能够输入文本并获取其他语言的翻译结果。 首先,要使用谷歌翻译API,你...

    android api 帮助文档 谷歌翻译版 中文 文档 安卓帮助文档

    android 帮助文档google翻译 android API 中文google翻译 ...android最新帮助文档 本帮助文档是使用google翻译,非人工翻译,准确性不能保证,请与英文版配合使用 文件打开空白 右键文件属性 解除锁定

    android谷歌文档翻译

    【Android谷歌文档翻译】 Android是谷歌开发的一种开源操作系统,广泛应用于智能手机、平板电脑以及智能电视等设备。Android的开发者文档是学习和理解Android系统、应用开发的重要资源。它提供了全面的API参考、...

    Google官方Android开发教程-入门篇-中文翻译

    - 这些教程是根据Google Android开发者官网的Training教程翻译而来,目的是为了帮助那些英文阅读能力有限的开发者更好地理解和学习Android开发相关的知识。 - 翻译过程中首先利用了Chrome浏览器的自动翻译功能进行...

    google android揭秘(Unlocking Android的中文翻译版).part2

    google android揭秘(Unlocking Android的中文翻译版)

    Android中文翻译组Android中文API合集 chm版本 免费

    《Android中文API合集》是Android开发者不可或缺的参考资料,它为中文用户提供了详细的API文档,帮助开发者更好地理解和使用Android系统。这份合集包含了Android开发的众多关键知识点,旨在简化学习过程,提高开发...

    谷歌翻译 Android

    用Android版Google翻译(Google Translate)可翻译 64 多种语言的字词和短语。对于大多数语言,您可以读出短语,然后便可听到相应的语音翻译。 借助 Google 翻译,您可以: • 在 64 种语言之间进行文字互译 • 通过...

    基于android的在线翻译app

    在本项目"基于Android的在线翻译App"中,开发者利用了Android平台的开发技术,结合百度翻译API,创建了一个能够实现实时翻译功能的应用程序。这个应用不仅提供了基础的翻译服务,还允许用户将重要的单词或短语收藏,...

    Android中文翻译组——Android中文API合集(3)免费

    1. **Android基础知识**:在Android开发中,理解基本概念如Activity、Intent、Service、Broadcast Receiver和Content Provider至关重要。这些构成了Android应用的核心架构,学习它们的工作原理能帮助开发者构建功能...

    google android揭秘(Unlocking Android的中文翻译版).part1

    google android揭秘(Unlocking Android的中文翻译版)

    google android揭秘(Unlocking Android的中文翻译版)之1【分成了四部分下载】

    google android揭秘(Unlocking Android的中文翻译版),【美】W.Frank Ableson Charlie Collins Robi Sen著,张波,高朝勤,杨越等译,人命邮电出版社,2010年4月第一版 共4部分,全部下载才能解压缩!!!

    Android官方中文翻译API文档

    在"Android中文翻译组——Android中文API合集(7).chm"文件中,开发者可以找到以下关键知识点: 1. **Android组件**:包括Activity(活动)、Service(服务)、Broadcast Receiver(广播接收器)和Content ...

    Android代码-Android官方博客翻译(定期更新)

    如果你也想贡献,请在Github pull request,我会审核并且排版并且将你加到列表中 翻译人员 smallSohoSolo wizChen 目录 简介 2016 二月 Android Support Library 23.2 来了! 为家庭设计App和游戏 Android Studio...

    Android中文翻译组——Android中文API合集(7)

    在Android开发领域,掌握API(应用程序接口)是至关重要的,因为它们构成了开发应用程序的基础。"Android中文翻译组——Android中文API合集(7)"是一个非常实用的资源,特别是对于那些英语阅读能力有限或者希望通过...

    Android 调用远程API实现在线翻译单词功能.rar

    Android调用google翻译的javascript实现翻译单词功能,在线翻译,用户输入单词,就可。  WebSettings webSettings = wv.getSettings();//取得WebSettings  webSettings.setJavaScriptEnabled(true);//设定可执行...

    Android 简单的翻译软件

    在移动应用开发领域,Android平台提供了丰富的功能和工具,使得开发者能够构建各种类型的应用,包括翻译软件。本项目“Android简单的翻译软件”是一个基础的多语言翻译应用,适合初学者和正在进行毕业设计的学生作为...

    Android Application Fundmentals及其翻译5000字(安卓毕设外文及翻译)

    Java是早期Android开发的主要语言,而Kotlin在近年来被Google推荐为首选语言,因其简洁的语法和安全性。 4. **Activity与Intent**:Activity是Android应用的基本组件,代表用户界面的一个屏幕。Intent则是连接不同...

    android 翻译app,直接可以在android studio上运行

    【标题】"Android翻译App,直接在Android Studio上运行"所涉及的知识点主要集中在Android应用开发上,特别是针对Android Studio的使用以及实现翻译功能。Android Studio是Google为Android开发者提供的集成开发环境...

Global site tag (gtag.js) - Google Analytics