Heim > Java > javaLernprogramm > Hauptteil

Die Java Baidu Translation API realisiert das Anwendungsszenario der gegenseitigen Übersetzung zwischen Chinesisch und Slowakisch

PHPz
Freigeben: 2023-08-06 18:29:02
Original
577 Leute haben es durchsucht

Java Baidu Translation API realisiert das Anwendungsszenario der gegenseitigen Übersetzung zwischen Chinesisch und Slowakisch

Mit der Entwicklung der Globalisierung wird die Kommunikation zwischen Menschen immer häufiger. Sprachbarrieren sind zu einem wichtigen Thema in der Kommunikation und Interaktion von Menschen geworden. Um dieses Problem zu lösen, sind verschiedene Übersetzungstools entstanden. Die Java Baidu Translation API ist eine davon. Sie realisiert die Funktion der gegenseitigen Übersetzung zwischen Chinesisch und Slowakisch, indem sie die Baidu Translation API-Schnittstelle aufruft. In diesem Artikel wird erläutert, wie Sie mithilfe der Java-Baidu-Übersetzungs-API Chinesisch und Slowakisch ineinander übersetzen und entsprechende Codebeispiele bereitstellen.

Zuerst müssen wir ein Konto auf der Baidu Translation Open Platform registrieren und eine Anwendung erstellen. Nach erfolgreicher Registrierung können wir eine App-ID und einen App-Schlüssel erhalten, mit denen die Baidu-Übersetzungs-API-Schnittstelle aufgerufen wird.

Als nächstes müssen wir die relevanten Abhängigkeitspakete der Java Baidu Translation API vorstellen. Fügen Sie in der Datei pom.xml die folgenden Abhängigkeiten hinzu:

<dependency>
    <groupId>com.googlecode.json-simple</groupId>
    <artifactId>json-simple</artifactId>
    <version>1.1.1</version>
</dependency>
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.12</version>
</dependency>
Nach dem Login kopieren

Anschließend können wir eine TranslateUtil-Toolklasse erstellen, um die Baidu-Übersetzungs-API-Schnittstelle für die Übersetzung aufzurufen. Der Code lautet wie folgt:

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;

import java.net.URLEncoder;

public class TranslateUtil {

    private static final String TRANS_API_HOST = "http://api.fanyi.baidu.com/api/trans/vip/translate";
    private static final String APP_ID = "your_app_id"; // 替换为自己的App ID
    private static final String SECURITY_KEY = "your_security_key"; // 替换为自己的App密钥

    /**
     * 调用百度翻译API进行翻译
     *
     * @param query 待翻译的字符串
     * @return 翻译结果
     */
    public static String translate(String query) {
        try {
            // 对待翻译的字符串进行URL编码
            String urlQuery = URLEncoder.encode(query, "UTF-8");

            // 构建请求URL
            String url = TRANS_API_HOST + "?q=" + urlQuery + "&from=auto&to=sk" +
                    "&appid=" + APP_ID + "&salt=1435660288&sign=" +
                    MD5Utils.md5(APP_ID + query + "1435660288" + SECURITY_KEY);

            // 发起HTTP请求
            CloseableHttpClient httpClient = HttpClients.createDefault();
            HttpGet httpGet = new HttpGet(url);
            CloseableHttpResponse response = httpClient.execute(httpGet);
            HttpEntity entity = response.getEntity();

            // 解析HTTP响应
            String responseStr = EntityUtils.toString(entity);
            JSONParser jsonParser = new JSONParser();
            JSONObject jsonObject = (JSONObject) jsonParser.parse(responseStr);
            JSONArray transResultArray = (JSONArray) jsonObject.get("trans_result");
            JSONObject transResult = (JSONObject) transResultArray.get(0);
            String dst = (String) transResult.get("dst");

            // 关闭HTTP连接
            response.close();
            httpClient.close();

            return dst;

        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
}
Nach dem Login kopieren

Im obigen Code rufen wir die Baidu-Übersetzungs-API-Schnittstelle auf, um die zu übersetzende Zeichenfolge, die App-ID, den Schlüssel und andere Informationen in eine URL zusammenzufügen und eine HTTP-Anfrage zu initiieren. Anschließend analysieren wir die HTTP-Antwort, erhalten die Übersetzungsergebnisse und geben sie zurück.

Schließlich können wir eine Testklasse schreiben, um die TranslateUtil-Toolklasse zu testen. Der Code lautet wie folgt:

public class TranslateTest {

    public static void main(String[] args) {
        String query = "你好";
        String result = TranslateUtil.translate(query);
        System.out.println("中文:" + query);
        System.out.println("斯洛伐克语:" + result);
    }
}
Nach dem Login kopieren

In der Testklasse können wir die Übersetzungsmethode der TranslateUtil-Toolklasse aufrufen, eine zu übersetzende chinesische Zeichenfolge eingeben und die übersetzte slowakische Zeichenfolge ausgeben.

Durch Ausführen der Testklasse können wir die folgende Ausgabe sehen:

中文:你好
斯洛伐克语:Ahoj
Nach dem Login kopieren

Das Obige sind die Schritte und Codebeispiele für die Verwendung der Java Baidu Translation API zum Übersetzen zwischen Chinesisch und Slowakisch. Mit Hilfe dieser API können wir Übersetzungen zwischen mehr Sprachen erreichen und den Komfort und die Effizienz der Kommunikation verbessern.

Das obige ist der detaillierte Inhalt vonDie Java Baidu Translation API realisiert das Anwendungsszenario der gegenseitigen Übersetzung zwischen Chinesisch und Slowakisch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage