欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#調(diào)用百度翻譯API實(shí)現(xiàn)一個(gè)翻譯功能

 更新時(shí)間:2021年06月27日 11:38:09   作者:汪錦鵬  
一直喜歡用Google Translate API進(jìn)行在線翻譯,但是服務(wù)越來(lái)越慢這篇文章,所以只能換一個(gè)了,主要給大家介紹了關(guān)于C#調(diào)用百度翻譯API實(shí)現(xiàn)一個(gè)翻譯功能的相關(guān)資料,需要的朋友可以參考下

前言

雖然百度翻譯相對(duì)于谷歌翻譯在準(zhǔn)確性方面還有很大的提升空間,但網(wǎng)絡(luò)的現(xiàn)實(shí)情況及百度翻譯接口的免費(fèi)易用性方面讓我們選擇百度翻譯接口。下面來(lái)一起看看詳細(xì)的步驟吧

方法如下

appId 和 passWord 需要到百度翻譯開放平臺(tái)申請(qǐng)

using System;
using System.Net;
using System.Web.Security;
using System.Web.Script.Serialization;

namespace TranslatorOfWang
{
    class TranslateFunction
    {
        public static string Translate(string content)
        {
            string languageFrom = "en", languageTo = "zh";
            if (Translate(content, languageFrom, languageTo).Error_code == null)
            {
                return Translate(content, languageFrom, languageTo).Trans_result[0].Dst;
            }
            else
                return Translate(content, languageFrom, languageTo).Error_msg;
        }
        public static PostResult Translate(string content, string languageFrom, string languageTo)
        {
            string appId = "2018111519456789", passWord = "gMk8wEKxENvbpUcvFxxx", randomNum = new Random().Next().ToString();
            string md5Sign = FormsAuthentication.HashPasswordForStoringInConfigFile(appId + content + randomNum + passWord, "MD5").ToLower();
            string FullRequest = "http://api.fanyi.baidu.com/api/trans/vip/translate?q=" + content + "&from=" + languageFrom + "&to=" + languageTo + "&appid=" + appId + "&salt=" + randomNum + "&sign=" + md5Sign;
            string m_Content = new WebClient().DownloadString(FullRequest);
            PostResult m_postResult = new JavaScriptSerializer().Deserialize<PostResult>(m_Content);
            return m_postResult;
        }
        public  class PostResult{
            public string Error_code { set; get; }
            public string Error_msg { set; get; }
            public string From { set; get; }
            public string To { set; get; }
            public TranslateContent[] Trans_result { set; get; }
        }
        public class TranslateContent
        {
            public string Src { set; get; }
            public string Dst { set; get; }
        }
    }
}

PostResult為百度API返回的值類型組成的一個(gè)自定義類,類里的每個(gè)名字和百度翻譯API返回值里名字要一致。

升級(jí)功能:

先將要翻譯的文本寫入TXT文檔,存入主目錄下的File目錄下,可以用以下代碼讀取后翻譯,用以解決每次翻譯,百度翻譯有句子長(zhǎng)短限制的問(wèn)題。TBTxtName.txt為要翻譯的文件名,要替換的符號(hào)以及語(yǔ)言可自己選擇。

        public void ReadAndTranslate()
        {
            string TextName = “TBTxtName.txt”;
            string path = "File/";
            StreamReader sr = new StreamReader(path + TextName + ".txt", Encoding.Default);
            StreamWriter m_SW = new StreamWriter(path + DateTime.Now.ToString("yyyymmddhhmm") + "TransLated" + ".txt", true);

            //去除符號(hào)重新定義句子
            string xx = sr.ReadToEnd();
            string[] split = xx.Split(new char[] { '.','!','?', ';', ',', ':' });

            string content;
            for (int i = 0; i < split.Length; i++)
            {
                content = split[i];
                if (content != null & content != "" & content != " " & content != "\n" & content != "\t" & content != "\r")
                {
                    string line = TranslationFunction.Translate(content);
                    m_SW.WriteLine(line);
                    //m_SW.WriteLine(content);
                }
            }
            m_SW.Dispose();
            m_SW.Close();
        }

總結(jié)

到此這篇關(guān)于C#調(diào)用百度翻譯API實(shí)現(xiàn)一個(gè)翻譯功能的文章就介紹到這了,更多相關(guān)C#調(diào)用百度翻譯API內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#編寫的Base64加密和解密類

    C#編寫的Base64加密和解密類

    本文給大家匯總介紹了幾種C#編寫的Base64加密和解密類的代碼,從簡(jiǎn)單到復(fù)雜,都能夠?qū)崿F(xiàn)功能,有需要的小伙伴根據(jù)自己的項(xiàng)目需求參考下吧。
    2015-05-05
  • 淺談c#表達(dá)式樹Expression簡(jiǎn)單類型比較demo

    淺談c#表達(dá)式樹Expression簡(jiǎn)單類型比較demo

    下面小編就為大家?guī)?lái)一篇淺談c#表達(dá)式樹Expression簡(jiǎn)單類型比較demo。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • C#?中的多態(tài)底層虛方法調(diào)用詳情

    C#?中的多態(tài)底層虛方法調(diào)用詳情

    這篇文章主要介紹了C#?中的多態(tài)底層虛方法調(diào)用詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,需要的小伙伴你可以參考一下
    2022-06-06
  • 深入淺析C#?11?對(duì)?ref?和?struct?的改進(jìn)

    深入淺析C#?11?對(duì)?ref?和?struct?的改進(jìn)

    這篇文章主要介紹了C#?11?對(duì)?ref?和?struct?的改進(jìn),有了這些基礎(chǔ)設(shè)施,開發(fā)者們將能輕松使用安全的方式來(lái)編寫沒(méi)有任何堆內(nèi)存開銷的高性能代碼,需要的朋友可以參考下
    2022-04-04
  • C#通過(guò)DataSet讀寫xml文件的方法

    C#通過(guò)DataSet讀寫xml文件的方法

    這篇文章主要介紹了C#通過(guò)DataSet讀寫xml文件的方法,涉及C#使用DataSet操作XML的相關(guān)技巧,方法簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-05-05
  • C#中的多線程小試牛刀

    C#中的多線程小試牛刀

    這篇文章主要給大家介紹了關(guān)于C#中多線程的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C#具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • C#純代碼實(shí)現(xiàn)打字游戲

    C#純代碼實(shí)現(xiàn)打字游戲

    這篇文章主要介紹了這篇文章主要為大家詳細(xì)介紹了C#純代碼實(shí)現(xiàn)打字游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • 基于C#實(shí)現(xiàn)簡(jiǎn)單的二維碼和條形碼的生成工具

    基于C#實(shí)現(xiàn)簡(jiǎn)單的二維碼和條形碼的生成工具

    這篇文章主要為大家詳細(xì)介紹了如何基于C#實(shí)現(xiàn)簡(jiǎn)單的二維碼和條形碼工具,用于二維碼條形碼的生成與識(shí)別,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-12-12
  • 描述C#多線程中l(wèi)ock關(guān)鍵字的使用分析

    描述C#多線程中l(wèi)ock關(guān)鍵字的使用分析

    本篇文章是對(duì)C#多線程中l(wèi)ock關(guān)鍵字的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • C#中委托(Delegates)的使用方法詳解

    C#中委托(Delegates)的使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了C#中委托(Delegates)的使用方法,感興趣的朋友可以參考一下
    2016-06-06

最新評(píng)論