U盘PE| w764位旗舰版下载 | U盘装win7系统 | U盘启动 |win7pe | win10下载 |加入收藏土豆PE官网U盘PE,U盘装win7系统,win7pe,U盘启动,U盘装系统,w764位旗舰版下载站!
当前位置:主页 > 帮助中心 > 帮助中心 >

delphi利用bing翻译API做的多国语言翻译软件

来源:http://www.tudoupe.com时间:2022-03-11

这是老师的插图多语种翻译软件,您可以自动评估您输入的语言 。为了转换 UTF8 字符串,软件使用了 http 连接技术、json 技术和 xml 分辨率技术。这个计划有一些问题。例如,可以通过Beng支持的各种语文守则可以用作未来的指针。如何将中文名称转换为其他语言?请大家给予帮助。

直接上代码:

unit Unit7;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,msxml, StdCtrls, ExtCtrls,IniFiles,XMLDoc, xmldom, XMLIntf, msxmldom;

type
TMainForm = class(TForm)
Memo1: TMemo;
Splitter1: TSplitter;
Memo2: TMemo;
Panel1: TPanel;
Button1: TButton;
ComboBox1: TComboBox;
Label1: TLabel;
XMLDocument1: TXMLDocument;
procedure Memo1KeyPress(Sender: TObject; var Key: Char);
procedure Button1Click(Sender: TObject);
procedure Memo1Change(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
langList:THashedStringList;
function Translate(AAppID: string; AText: string; InLanguage: string='en'; OutLanguage: string='zh-CHS'): string;
procedure initParam;
public
{ Public declarations }
end;
const
GETLANGUAGESFORTRANSLATE=' http://api.microsofttranslator.com/v2/Http.svc/GetLanguagesForTranslate?appId=%s';
GETLANGUAGENAMES=' http://api.microsofttranslator.com/v2/Http.svc/GetLanguageNames?appId=%s&locale=%s&languageCodes=%s';
DETECT=' http://api.microsofttranslator.com/V2/http.svc/Detect?appId=%s&text=%s';
TRANSLATESTR= ' http://api.microsofttranslator.com/V2/http.svc/Translate?appId=%s&text=%s&from=%s&to=%s';
APPID= 'C98FDCE95A2FD7BA417F260D43763C40232E****';

var
MainForm: TMainForm;

implementation

{$R *.dfm}
谷歌地址的 UTF8 编码函数字符串到 UTF8
function ToUTF8Encode(str: string): string;
var
b: Byte;
begin
for b in BytesOf(UTF8Encode(str)) do
Result := Format('%s%s%.2x', [Result, '%', b]);
end;

procedure TMainForm.Button1Click(Sender: TObject);

begin
initParam;

end;

procedure TMainForm.ComboBox1Change(Sender: TObject);
begin
Button1.Enabled:= (length(trim(memo1.text))>0) and (ComboBox1.ItemIndex>=0);
end;

procedure TMainForm.FormShow(Sender: TObject);
var
I:Integer;
begin

ComboBox1.Items.Clear;
langList:=THashedStringList.Create;
with langList do
begin
“ZH-CHS=可靠的中国人”;
“ZH-CHT=中国代表大会”;
包括('en=English');
(“ar=阿拉伯文”);
bg=保加利亚人;
('ca' =加泰罗尼亚语)
cs=捷克;加上(“cs”=捷克);
添加“da=丹麦”;
nl=dutch; 添加('nl=dutch'); 添加('nl=dutch');
(“et”=爱沙尼亚”;
('Fi=芬兰语');
(fr=法文);
加上“de = 德语”;
el=Greek; 添加 (“ el=Greek ” );
ht=海地人;加上('ht=海地人);
(“他”=希伯来语);
"嗨" = "Hindi" ;
Hu=匈牙利;加上(“Hu=匈牙利”);
“id=印度尼西亚组”;
(“意大利语”);
(“ja=日语”);
(“韩国人”);
('lv'=拉脱维亚');
“它=立陶宛”);
"不=挪威"被添加。
(“pl=波兰”);
“pt=葡萄牙语”);
插入('ro=罗马尼亚');
“ru=俄罗斯”);
添加“sk= slovak” ;
加上“sl=斯洛文尼亚”。
包括(`es'=西班牙语');
添加“ sv=瑞典语” 。
添加('th=泰国');
添加了“ tr=土耳其 ” 。
包括(“ uk=乌克兰” );
"vi = 越南人;"
end;
for I := 0 to langList.Count - 1 do
begin
ComboBox1.Items.Add(langList.ValueFromIndex[i]);
end;
ComboBox1.ItemIndex:=0;
end;

procedure TMainForm.Memo1Change(Sender: TObject);
begin
Button1.Enabled:= (length(trim(memo1.text))>0) and (ComboBox1.ItemIndex>=0);

end;

procedure TMainForm.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
initParam;
end;

function TMainForm.Translate(AAppID, AText, InLanguage,
OutLanguage: string): string;
var
Url: string;
req: IXMLHTTPRequest;
begin
Url := Format(TRANSLATESTR, [AAppID, AText, InLanguage, OutLanguage]);
req := CoXMLHTTP.Create;
req.open('Get', Url, False, EmptyParam, EmptyParam);
req.send(EmptyParam);
XMLDocument1.LoadFromXML( req.responseText);

结果:= XMLDocument1. - 你明白我的意思吗? 文本; / / 删除标签前和标签后
end;

procedure TMainForm.initParam;
var
langFrom: string;
req: IXMLHTTPRequest;
tolang: string;
URL: string;
begin
Url := Format(DETECT, [APPID, ToUTF8Encode(Memo1.Text)]);
req := CoXMLHTTP.Create;
req.open('Get', URL, False, EmptyParam, EmptyParam);
req.send(EmptyParam);
langFrom := req.responseText;
XMLDocument1.LoadFromXML(langFrom);
langFrom := XMLDocument1.DocumentElement.Text;
tolang := langList.Names[ComboBox1.ItemIndex];
memo2.Text := Translate(APPID, ToUTF8Encode(Memo1.Text), langfrom, tolang);
end;end.

Copyright © 2012-2014 Www.tudoupe.Com. 土豆启动 版权所有 意见建议:tdsky@tudoupe.com

土豆系统,土豆PE,win7系统下载,win7 64位旗舰版下载,u盘启动,u盘装系统,win10下载,win10正式版下载,win10 RTM正式版下载,win8下载,电脑蓝屏,IE11修复,网络受限,4K对齐,双系统,隐藏分区,系统安装不了,U盘装系统,笔记本装系统,台式机装系统,diskgenius运用,GHSOT装系统,U盘修复,U盘技巧,U盘速度,U盘不能格式化,U盘复制发生错误,U盘加密,U盘选购,开机黑屏,蓝屏,进不了系统,上不了网,打不开程序,点击无反应,系统设置,PE个性化,PE添加网络,PE维护系统

点击这里给我发消息