浏览器调用:

<html><head><script type="text/javascript" src="http://www.google.com/jsapi"></script><script type="text/javascript"><!--google.load("language", "1");function initialize() {var text = document.getElementById("text").innerHTML;google.language.detect(text, function(result) {if (!result.error && result.language) {google.language.translate(text, result.language, "en",function(result) {var translated = document.getElementById("translation");if (result.translation) {translated.innerHTML = result.translation;}});}});}google.setOnLoadCallback(initialize);//--></script></head><body><div id="text">你好,很高興見到你。</div><div id="translation"></div></body>
</html>

客户端 调用:

将 Google翻译API封装成一个类:GoogleTranslateLib.cs

namespace GoogleTranslateLib
{using System;using System.IO;using System.Net;using System.Runtime.Serialization;using System.Text; using System.Web;[DataContract(Namespace = "http://ajax.googleapis.com/ajax/services/language/translate")]class Config{[DataMember(Order = 0)]public ResponseData responseData { get; set; }[DataMember(Order = 1)]public string responseDetails { get; set; }[DataMember(Order = 2)]public string responseStatus { get; set; }}[DataContract(Namespace = "http://ajax.googleapis.com/ajax/services/language/translate")]class ResponseData{[DataMember(Order = 0)]public string translatedText { get; set; }}class Translate{public static string translatezh2en(string sourceText, string langPair){string result;string url = "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&langpair=";url +=  HttpUtility.UrlEncode(langPair) + "&q=" +  HttpUtility.UrlEncode(sourceText);HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);request.Method = "GET";request.Referer = "http://www.my-ajax-site.com";try{HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream responseStream = response.GetResponseStream();StreamReader reader = new StreamReader(responseStream, Encoding.GetEncoding("UTF-8"));result = reader.ReadToEnd();}catch (Exception){return "";}return result;}}
}

调用方法:

using System;
using System.IO;
using System.Text;
using System.Runtime.Serialization.Json;namespace GoogleTranslateDemo
{class Program{public static void Main(string[] args){Console.WriteLine("请输入您想翻译的字词:");string inputStr = Console.ReadLine();Console.WriteLine("翻译中,请稍后...");string result = GoogleTranslateLib.Translate.translatezh2en(inputStr, "zh|en");if (!string.IsNullOrEmpty(result)){var serializer = new DataContractJsonSerializer(typeof(GoogleTranslateLib.Config));var mStream = new MemoryStream(Encoding.UTF8.GetBytes(result));GoogleTranslateLib.Config readConfig = (GoogleTranslateLib.Config)serializer.ReadObject(mStream);if (readConfig.responseStatus == "200"){string message = "原始内容:" + inputStr + Environment.NewLine + "翻译内容:" + readConfig.responseData.translatedText;Console.WriteLine(message);}}Console.ReadKey(true);}}
}

效果图:

Google翻译API(B/S调用和C/S调用)相关推荐

  1. 在C#中使用Google翻译API

    目录 介绍 要求 示例翻译函数 兴趣点 介绍 我们想轻松地将文本字符串翻译成另一种语言.从Google 翻译API返回的结果非常晦涩.它们采用JSON锯齿状数组的形式.当您必须翻译多个句子时,甚至更加 ...

  2. Google 翻译API Demo

    接上篇 Google翻译API(B/S调用和C/S调用) 上篇里提到的接口调用方法是get方式,这样有个问题,每次请求翻译的内容不能超过url允许的长度.需要改成post方式才行,但是google没有 ...

  3. Google翻译API的使用

    今天学习了下Google翻译的API,有所收获,也有些问题.      总结了下,主要有两种调用方式:B/S方式(在网页中),C/S方式(在Java程序中). 第一种:B/S方式. Google Aj ...

  4. Google翻译API使用案例

    简单整理了下Google翻译的API使用方法.简单的说就是一个Ajax请求: 效果图: 源代码:都附上了注释还是比较好看懂的.将该代码复制成html即可运行. <html> <hea ...

  5. python 调用Google Translate API进行翻译

    调用Google 翻译API进行翻译 #!/usr/bin/python #coding: UTF-8 import sys reload(sys) sys.setdefaultencoding('u ...

  6. node调用谷歌翻译Api,实现自动国际化

    原因: 项目国际化过程繁琐,每次都需要人工去google翻译,导致工作效率不高. 需求: 1.减少人工的重复劳动,提高工作效率. 2.使用脚本调用谷歌翻译接口自动化翻译. 3.free,作为程序员肯定 ...

  7. php有道,PHP调用有道词典翻译API实现通译功能及代码

    PHP调用有道词典翻译API实现通译功能及代码PHP调用有道词典翻译API实现翻译功能及代码 PHP调用有道词典翻译API实现翻译功能及代码,其中英文可以翻译,中文不能翻译是什么问题啊?急 http: ...

  8. 【工具】Vscode翻译插件推荐(不用谷歌翻译api、支持短句英汉互译、支持查词、支持自动补全、不需要浏览器)

    需求: 1)偶尔需要查英文生词: 2)有时候想不起来中文对应的英文: 3)不想回到浏览器打开一堆网页: 4)谷歌翻译挂了. 偶尔需要的需求: 1)短句翻译. 因为谷歌翻译挂了,首先,排除最热门的翻译插 ...

  9. Android google翻译踩坑之旅

    # Android google翻译踩坑之旅   最近由于工作需求,需要为游戏Android平台接入Google翻译的SDK,由于关于翻译的文章非常少,访问官方文档又需要翻墙,更可气的是找到的博客写了 ...

最新文章

  1. 【leetcode】85. Maximal Rectangle 0/1矩阵的最大全1子矩阵
  2. 使用 WRK 压力测试工具对 ASP.NET Core 的接口进行压力测试
  3. Tomcat 在mac上(Idea)端口冲突解决办法
  4. c++ 麦克风 录音 wav_小米有品上线新品,手机麦克风得到史诗级加强
  5. 收藏!最强行人检测算法思维导图
  6. BeJavaGod - 如何正确使用数据字典进行分类统一操作(一)
  7. ros melodic控制真实机械臂之openmanipulator参考
  8. [渝粤教育] 广东-国家-开放大学21秋期末考试大学英语210262k2
  9. SQL2005之后MS SQL版本 T-SQL 新增语法、函数(二)
  10. Windows10下设置开机自启动自己的程序
  11. html界面设计用什么软件,html网页开发常用软件有哪些
  12. 简易版双人对战五子棋
  13. spss和python财务数据分析_用SPSS做数据分析?先弄懂SPSS的基础知识吧
  14. Vue + element 实现课程表
  15. 大学计算机考试59分,大学期末考59分,你会找老师理论吗?很多人都猜错
  16. 走着瞧Anbsp;Talenbsp;ofnbsp;Twonbsp;Donkeysnbsp;(200…
  17. LoadRunner 回放出错
  18. 前端开发规范:CSS 代码规范指南
  19. webpack打包js文件,图片路径错误,没有将图片打包的问题
  20. 了解List组件的基本用法

热门文章

  1. matlab sparse用法,sparse 稀疏函数的用法2
  2. 转载:企业关键业绩指标(KPI)与绩效考核
  3. java毕业生设计校园约自习网站计算机源码+系统+mysql+调试部署+lw
  4. scanf函数输入double类型需要注意的地方
  5. 前端导入Excel,后台接收并处理(超详细!)
  6. 想成为java高级程序员,需要掌握哪些技术?
  7. 类的数据成员与成员函数
  8. mysql @@rowcount_「rowcount」SQL Server中Rowcount与@@Rowcount的用法 - seo实验室
  9. 敏捷软件开发——重构篇
  10. 【论文笔记 2】CNN经典入门STRIVING FOR SIMPLICITY: THE ALL CONVOLUTIONAL NET