文档章节

在 Delphi 中使用微软全文翻译的小例子

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 255
阅读 5
收藏 0

刚刚从博客园看到有朋友用 C# 做了这么个东西, 我用 Delphi 尝试了一下.

需要先去申请一个 AppID: http://www.bing.com/toolbox/bingdeveloper/
使用帮助在: http://msdn.microsoft.com/en-us/library/dd576287.aspx

uses MsXML;

{函数}
function Translate(AAppID: string; AText: string; InLanguage: string='en'; OutLanguage: string='zh-CHS'): string;
const
  BaseUrl = 'http://api.microsofttranslator.com/V2/http.svc/Translate?appId=%s&text=%s&from=%s&to=%s';
var
  Url: string;
  req: IXMLHTTPRequest;
begin
  Url := Format(BaseUrl, [AAppID, AText, InLanguage, OutLanguage]);
  req := CoXMLHTTP.Create;
  req.open('Get', Url, False, EmptyParam, EmptyParam);
  req.send(EmptyParam);
  Result := req.responseText;
  Result := Copy(Result, 68+1, Length(Result)-68-9); //去掉前后的标签
end;

{调用测试}
procedure TForm1.Button1Click(Sender: TObject);
const
  myAppId = '65FCA293BDB85C98D16A567C3FECE22272B6****'; //这是我申请的 AppID, 隐藏了后四位
begin
  Memo2.Text := Translate(myAppId, Memo1.Text);
end;


效果图:



使用 Indy:

uses IdHTTP;

function Translate2(AAppID: string; AText: string; InLanguage: string='en'; OutLanguage: string='zh-CHS'): string;
const
  BaseUrl = 'http://api.microsofttranslator.com/V2/http.svc/Translate?appId=%s&text=%s&from=%s&to=%s';
var
  Url: string;
  stream: TStringStream;
  idHttpObj: TIdHTTP;
begin
  stream := TStringStream.Create;
  idHttpObj := TIdHTTP.Create(nil);
  Url := Format(BaseUrl, [AAppID, Trim(AText), InLanguage, OutLanguage]);
  idHttpObj.Get(Url, stream);
  Result := stream.DataString;
  Result := Copy(Result, 68+1, Length(Result)-68-9); //去掉前后的标签
  idHttpObj.Free;
  stream.Free;
end;

本文转载自:http://www.cnblogs.com/del/archive/2011/11/14/2248752.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
C# WinForm开发系列 - Reporting Services

收集微软的SQL Reporting Services 在商务智能系统(BI)与数据挖掘方面开发应用以及安装配置文章, 并提供了相关开发资源的下载地址. Reporting Services初体验 报表服务教程1: 创建基本报表...

长征2号
2017/11/06
0
0
golang语言中的math库中效率低下,可能是类型转换花费了大量时间?

今天写了个加密的东西,用到了math.Sqrt求质数,发现用的时间很久,先不管下面的例子算法是否有问题,我就写了个demo寻找10 000 000以内的质数个数,原本这个demo是delphi写的,我把它翻译成...

大洋的顶端
2017/10/26
0
14
HeidiSQL 8.0 发布,数据库客户端软件

Ansgar Becker 刚刚 宣布 HeidiSQL 8.0 发布了,HeidiSQL 是一个功能非常强大的数据库客户端软件,采用 Delphi 开发,支持 Windows 操作系统。支持 MySQL、MariaDB、Percona Server 和微软的...

oschina
2013/05/21
5.3K
39
不在乎y/RTXCPluginForDelphiSDK

======= #RTXCPluginForDelphiSDK ##Delphi开发RTX插件 (Delphi XE6) 当初开发只是好奇, 所以去研究了下, 花了两天的时间翻译了原C++ SDK到Delphi 目录结构及祥细情况 Demo NotetipsGroup 一...

不在乎y
2014/11/23
0
0
Delphi 使用 Duilib 库--Duilib for Delphi

导读 什么是Duilib for Delphi? Duilib for Delphi是一个基于C++Duilib的开源工程,主要致力于在Delphi中使用Duilib库构建漂亮的UI。 怎么学习?首先对Duilib有基本的了解,特别是XML构建的U...

不在乎y
2015/11/30
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

一个本科学生对Linux的认知

一个本科学生对Linux的认知 我是一名大三的普通一本大学的软件工程的一名学生,学校开设了一些关于系统开发的课程,纸上得来终觉浅,学校的课程课时较短,想要在56个课时之内学会一些公司需要...

linuxCool
19分钟前
0
0
CentOS 安装Tomcat

Tomcat 介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Java 程序写的网站用tomcat+jdk来运...

野雪球
34分钟前
0
0
OSChina 周四乱弹 —— 每天都迟到是种什么样的体验

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @开源中国首席机器人 :《Too Good At Goodbyes (Acoustic) - Sam Smith - 单曲》 《Too Good At Goodbyes (Acoustic) - Sam Smith - 单曲》 ...

小小编辑
39分钟前
213
9
jquery通过id显示隐藏

var $div3 = $('#div3'); 显示 $div3.show(); 隐藏 $div3.hide();

yan_liu
今天
3
0
《乱世佳人》读书笔记及相关感悟3900字

《乱世佳人》读书笔记及相关感悟3900字: 之前一直听「荔枝」,后来不知怎的转向了「喜马拉雅」,一听就是三年。上班的时候听房产,买房了以后听装修,兴之所至时听旅行,分手后听亲密关系,...

原创小博客
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部