c#winform如何实现中英文转换

 我来答
咖喱小西瓜
推荐于2016-03-07 · TA获得超过186个赞
知道小有建树答主
回答量:171
采纳率:0%
帮助的人:203万
展开全部

如果你要实现自己写的话你必须有英语词汇库才能实现,

最好如楼上所说调用谷歌的接口来做翻译效果,

下面附上代码

/// <summary>
      /// 翻译方法
      /// </summary>
       /// <param name="textstr">需要翻译的内容</param>
      /// <param name="language">被翻译的语言</param>
      /// <param name="tolanguage">翻译成的语言</param>
      /// <returns></returns>
       public static string GetGoogtextStr(string textstr, string language, string tolanguage)
       {
          
             WebClient web = new WebClient();
               WebHeaderCollection headers = new WebHeaderCollection();
               headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded; charset=utf-8";
               headers[HttpRequestHeader.Referer] = "http://translate.google.cn/";
               web.Headers = headers;
               string text = textstr;
               string url = string.Format("http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q={0}&langpair={1}%7C{2}", text, language, tolanguage);
               byte[] bystr = web.DownloadData(url);
               string urldata = GetText(System.Web.HttpUtility.UrlDecode(bystr, Encoding.UTF8));
               return urldata;
      
       }
Hashtable array = new Hashtable();
            array.Add("sq", "阿尔巴尼亚语");
            array.Add("ar", "阿拉伯语");
            array.Add("ga", "爱尔兰语");
            array.Add("et", "爱沙尼亚语");
            array.Add("be", "白俄罗斯语");
            array.Add("bg", "保加利亚语");
            array.Add("is", "冰岛语");
            array.Add("pl", "波兰语");
            array.Add("fa", "波斯语");
            array.Add("af", "布尔文(南非荷兰语)");
            array.Add("da", "丹麦语");
            array.Add("de", "德语");
            array.Add("ru", "俄语");
            array.Add("fr", "法语");
            array.Add("tl", "菲律宾语");
            array.Add("fi", "芬兰语");
            array.Add("ko", "韩语");
            array.Add("nl", "荷兰语");
            array.Add("gl", "加利西亚语");
            array.Add("ca", "加泰罗尼亚语");
            array.Add("cs", "捷克语");
            array.Add("hr", "克罗地亚语");
            array.Add("lv", "拉脱维亚语");
            array.Add("lt", "立陶宛语");
            array.Add("ro", "罗马尼亚语");
            array.Add("mt", "马耳他语");
            array.Add("ms", "马来语");
            array.Add("mk", "马其顿语");
            array.Add("no", "挪威语");
            array.Add("pt", "葡萄牙语");
            array.Add("ja", "日语");
            array.Add("sv", "瑞典语");
            array.Add("sr", "塞尔维亚语");
            array.Add("sk", "斯洛伐克语");
            array.Add("sl", "斯洛文尼亚语");
            array.Add("sw", "斯瓦希里语");
            array.Add("th", "泰语");
            array.Add("tr", "土耳其语");
            array.Add("cy", "威尔士语");
            array.Add("uk", "乌克兰语");
            array.Add("es", "西班牙语");
            array.Add("iw", "希伯来语");
            array.Add("el", "希腊语");
            array.Add("hu", "匈牙利语");
            array.Add("it", "意大利语");
            array.Add("yi", "意第绪语");
            array.Add("hi", "印地语");
            array.Add("id", "印尼语");
            array.Add("en", "英语");
            array.Add("vi", "越南语");
            array.Add("zh", "中文");

语言标志传这些就可以了GetGoogtextStr(textstr, “zh”, "en")//这样就是将中文翻译为英文

调用上面的方法就可以实现简单的翻译了,支持30多种语言

下面是核心接口.

http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q={0}&langpair={1}%7C{2}

{0}:表示被翻译字符

{1}:被翻译字符的语言

{2}:翻译的目标字符


因为是GET提交方式,那么就限定了字符长度,可以说是一大遗憾.

denveryang3633
2014-03-17 · TA获得超过266个赞
知道小有建树答主
回答量:342
采纳率:0%
帮助的人:155万
展开全部
可以调取Google的翻译引擎接口来做
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhang399401
2014-03-16 · TA获得超过702个赞
知道小有建树答主
回答量:1347
采纳率:0%
帮助的人:941万
展开全部
中文转拼音?还是?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式