这是简单的界面。用的是wpf,winform也可以

具体的操作类

public partial class MainWindow : Window
{
string url = "";
public MainWindow()
{
InitializeComponent();
this.cbxTranslateChange.SelectedIndex = ;
}
private TranClass tranClass = new TranClass();
private void btnTranslate_Click(object sender, RoutedEventArgs e)
{ WebClient client = new WebClient(); //引用System.Net
string fromTranslate = tbxFromContent.Text; //翻译前的内容
if (!string.IsNullOrEmpty(fromTranslate))
{
         //client_id为自己的api_id,q为翻译对象,from为翻译语言,to为翻译后语言
string url = string.Format("http://openapi.baidu.com/public/2.0/bmt/translate?client_id={0}&q={1}&from={2}&to={3}", "youAPI_Id", fromTranslate, tranClass.From, tranClass.To);
var buffer = client.DownloadData(url);
string result = Encoding.UTF8.GetString(buffer);
StringReader sr = new StringReader(result);
JsonTextReader jsonReader = new JsonTextReader(sr); //引用Newtonsoft.Json 自带
JsonSerializer serializer = new JsonSerializer();
var r = serializer.Deserialize<TranClass>(jsonReader); //因为获取后的为json对象 ,实行转换
tbxToContent.Text = r.Trans_result[].dst; //dst为翻译后的值
}
}
     
     
     //改变翻译语言来执行相应的操作
private void cbxTranslateChange_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
ComboBox comboBox = sender as ComboBox;
switch (comboBox.SelectedIndex)
{
case :
tranClass.From = "zh";
tranClass.To = "en";
break;
case :
tranClass.From = "en";
tranClass.To = "zh";
break;
case :
tranClass.From = "zh";
tranClass.To = "jp";
break;
case :
tranClass.From = "jp";
tranClass.To = "zh";
break;
case :
tranClass.From = "zh";
tranClass.To = "kor";
break;
case :
tranClass.From = "kor";
tranClass.To = "zh";
break;
case :
tranClass.From = "zh";
tranClass.To = "spa";
break;
case :
tranClass.From = "spa";
tranClass.To = "zh";
break;
default:
tranClass.From = "auto";
tranClass.To = "auto";
break; }
}      //对翻译后的内容发音,操作类具体我也不了解,默认发音英文,中文,其他语言要自己添加。
private void btnsound_Click(object sender, RoutedEventArgs e)
{
///gettts?lan=en&text=Scattering&spd=2&source=web
SpeechLib.SpeechVoiceSpeakFlags svsFlags = SpeechLib.SpeechVoiceSpeakFlags.SVSFlagsAsync;
SpeechLib.SpVoice voice = new SpeechLib.SpVoice();
voice.Speak(tbxToContent.Text, svsFlags); }
}

这是返回结果使用的类

namespace BDTranslate.Models
{
public class TranClass
{
public string From { get; set; }
public string To { get; set; }
public List<Trans_result> Trans_result { get; set; }
}
public class Trans_result
{
public string src { get; set; }
public string dst { get; set; }
}
}

百度翻译api :http://developer.baidu.com/wiki/index.php?title=帮助文档首页/百度翻译/翻译API

C# 调用百度翻译Api的更多相关文章

  1. Python 调用百度翻译API

    由于实习公司这边做的是日文app,有时要看看用户反馈,对于我这种五十音图都没记住的人,表示百度翻译确实还可以.但不想每次都复制粘贴啊,google被墙也是挺蛋疼的事,所以用python结合baidu ...

  2. 原生js简单调用百度翻译API实现的翻译工具

    先来个在线demo: js翻译工具 或者百度搜索js简单调用百度翻译API工具(不过有个小小的界面显示bug,我想细心的人应该会发现) 或者直接前往该网址:js翻译工具 或者前往我的github:gi ...

  3. 调用百度翻译 API 来翻译网站信息

    之前说过jquery.i18n.js 来做网站的中英翻译,前提就得做一套中文内容,一套英文内容来解决,好处是中英翻译可以准确无误,本篇文章我们来看一下调用百度翻译的 API 来进行网站的翻译,但是翻译 ...

  4. 调用百度翻译API接口功能

    public string appid = "自己的APPID"; public string q = "要翻译的文本"; "; public str ...

  5. 百度翻译API(C#)

    百度翻译开放平台:点击打开链接 1. 定义类用于保存解析json得到的结果 public class Translation { public string Src { get; set; } pub ...

  6. 利用百度翻译API,获取翻译结果

    利用百度翻译API,获取翻译结果 translate.py #!/usr/bin/python #-*- coding:utf-8 -*- import sys reload(sys) sys.set ...

  7. Go语言使用百度翻译api

    Go语言使用百度翻译api 之前做过一个使用百度翻译api的工具,这个工具用于用户的自动翻译功能,是使用C#调用百度翻译api接口,既然在学习Go语言,那必然也是要使用Go来玩耍一番.这里我是这么安排 ...

  8. 百度翻译api初使用(很久没写python了,写几行玩玩)

    调用free api做做简易的翻译 这个是百度翻译api文档 http://api.fanyi.baidu.com/api/trans/product/apidoc 照着百度api给的文档向web服务 ...

  9. PHP 最完美调用百度翻译接口代码示例 (原)

    php调用百度翻译最新接口代码 问       题:写的过程遇到了一个问题,url拼接好的原翻译内容,appid,sign的地址直接输出到浏览器可以打开看到翻译后的返回值,但是各种curl,file_ ...

随机推荐

  1. MYSQL数据库忘记密码

    1.忘记密码解决办法 Windows下的实际操作如下 1.关闭正在运行的MySQL. 2.打开DOS窗口,转到mysql\bin目录. 3.输入mysqld --skip-grant-tables回车 ...

  2. Java冒泡随笔

    package homework; import java.util.Scanner; public class ArraySort { /** * @param args */ public sta ...

  3. c调用python

    #include <Python.h>//python33(python2.x有几个函数不对应) /* PyImport_ImportModule 导入一个Python模块并返回它的指针 ...

  4. runtime学习实战一:类的属性进行归档解档

    #import <Foundation/Foundation.h> @interface PYPerson : NSObject @property (nonatomic, assign) ...

  5. select跳转页面

    跳转到当前页: <select name="here " onchange="location.href=this.options[this.selectedInd ...

  6. java.io.IOException: Cannot run program "jad"

    今天调试google tag manager, 需要看看google analytics source code,无奈没有源码,装个一个插件ejad 还是不行: java.io.IOException ...

  7. Psp个人软件开发软件需求分析和用例分析

    Psp个人软件开发软件需求分析和用例分析 一.需求分析 1.业务需求 1.1 应用背景 开发项目进度计划总是那么不明确,延期经常出现,甚至无法给出一个相对比较明确的延迟时间.这样给市场的推广会带来很大 ...

  8. html学习心得

    注释:浏览器会自动地在段落的前后添加空行.(<p> 是块级元素) 提示:使用空的段落标记 <p></p> 去插入一个空行是个坏习惯.用 <br /> 标 ...

  9. SRS文档

    1什么是用例? 在介始用例方法之前,我们首先来看一下传统的需求表述方式-"软件需求规约"(Software Requirement Specification).传统的软件需求规约 ...

  10. 我的OpenCV学习笔记:VideoCapture类

    opnCV  学习博客http://blog.csdn.net/thefutureisour/article/details/7472104 1 OpneCV中的数据共享机制 OpenCV是一个很不错 ...