您的位置:首页 > 编程语言 > C#

C#调用微软在线翻译API实现简单的翻译功能

2013-05-16 11:05 375 查看
来自:http://www.csharpwin.com/csharpspace/12991r9596.shtml

一直喜欢用Google Translate API进行在线翻译,但是,后来,大家都知道的,Google的服务越来越慢,无法忍受,只好寻找更快的在线翻译接口,后来找到Microsoft Translate,觉得非常好用,我用SOAP方式做一个示例,希望给有相同需求的小盆友一点参考,老鸟就不用看了,没什么技术含量的。

首先,需要一个Bing开发人员中心,注册一个应用,获得一个Appid,这是必须滴~,注册地址如下:
http://cn.bing.com/developers
?



如上图所示,点击“开发人员”,点“Add”,输入基本资料后,等待片刻,刷新页面,则会看到一个Application ID,记下来。

然后进入MSDN文档

http://msdn.microsoft.com/en-us/library/dd576287.aspx

根据文档编写代码即可,下面我以SOAP为例,写一个简单的翻译程序。

在VS2010 新建一个应用程序,(或桌面程序或控制台或网站均可),

右键应用,点击“添加服务引用”,输入

http://api.microsofttranslator.com/V2/Soap.svc

点击“前往”,点击服务可查看相关操作和方法

然后在下面输入一个命名空间,如ServiceReference1

点击确定,如下图所示:



然后在窗体上添加两个richTextBox,再添加一个button按扭,在单击事件中写入

1 string result;
2 ServiceReference1.LanguageServiceClient client = new ServiceReference1.LanguageServiceClient();
3 result = client.Translate("前面申请到的APPID", richTextBox1.Text, "en", "zh-CHS", "text/html", "general");
4 richTextBox2.Text = result;


点运行,在richTextBox1中输入要翻译的英文,点按扭,翻译成功。



SOAP貌似无1000字节翻译长度限制,HTTP和AJAX方式是有长度限制的。

对于翻译的准确率,我觉得微软的翻译接口还是相当给力的,尤其是技术方面的翻译,相当给力,速度也很快,推荐大家使用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: