zoukankan
html css js c++ java
Google翻译API(B/S调用和C/S调用)
浏览器调用:
<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; <strong><span style="color:#ff6600;">using System.Net;</span> <span style="color:#ff6600;">using System.Runtime.Serialization;</span></strong> using System.Text; <strong><span style="color:#ff6600;"> using System.Web;</span></strong> [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; <strong><span style="color:#ff6600;">using System.Runtime.Serialization.Json;</span></strong> 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); } } }
效果图:
查看全文
相关阅读:
上门量体不能停,量品打造“一人一版”的私人定制衬衫,半年覆盖30个城市
直击中小互联网企业痛点,程序员客栈推出短期雇佣功能
现在,培训老师也有可能是你未来的 Boss
【蓝领日志】捷库,给B端提供蓝领员工的标准化培训工具
【调研】华图教育:领跑公职培训市场
社区服务中心+护理员培训+云平台,中康行健“一体两翼”构建养老生态体系
餐厅孵化器“优粮生活”,用孵化模式打造统一独立外卖品牌
语培市场热度不减,“手韩”背后的垂直领域空间在哪?
母基金_百度百科
小编亲测杭州最火的海南鸡饭,最好吃的居然是……-搜狐吃喝!!!
原文地址:https://www.cnblogs.com/zhangqs008/p/2341109.html
最新文章
MyBatis association的两种形式——MyBatis学习笔记之四
IE8下提示'console'没有定义错误
jqGrid在IE中使用iframe嵌套,页码条不显示问题
Android如何在Framework层使用解锁代码
cocos2d&cocos2dx学习资源
Notepad++中的复活节彩蛋(easter egg)
C语言--函数
永久删除 tadb.exe
用网页server实现钢琴弹奏(使用Wizwiki-W7500)
Android源代码之DeskClock (一)
热门文章
css3 设置背景图片大小(缩略图形式缩小)
QA_百度百科
质量管理究竟是做什么的?
何谓“正合奇胜”?_百度知道
约束理论_百度百科
微服务架构的基础框架选择:Spring Cloud还是Dubbo?
Lapis
马云建立的员工培养之体系
关于傲玩_上海傲玩网络科技有限公司
以IT培训起家的达内科技,如今半壁江山是非IT培训的其他职业教育了
Copyright © 2011-2022 走看看