Maison > Java > javaDidacticiel > le corps du texte

L'API Java Baidu Translation réalise le scénario d'application de traduction mutuelle entre le chinois et le slovaque

PHPz
Libérer: 2023-08-06 18:29:02
original
576 Les gens l'ont consulté

L'API Java Baidu Translation réalise le scénario d'application de traduction mutuelle entre le chinois et le slovaque

Avec le développement de la mondialisation, la communication entre les personnes devient de plus en plus fréquente. Les barrières linguistiques sont devenues un problème important dans la communication et l'interaction des gens. Afin de résoudre ce problème, divers outils de traduction ont vu le jour. L'API Java Baidu Translation en fait partie. Elle réalise la fonction de traduction mutuelle entre le chinois et le slovaque en appelant l'interface API Baidu Translation. Cet article explique comment utiliser l'API Java Baidu Translation pour traduire le chinois et le slovaque l'un vers l'autre et fournit des exemples de code correspondants.

Tout d'abord, nous devons créer un compte sur la plateforme ouverte de traduction Baidu et créer une application. Après une inscription réussie, nous pouvons obtenir un identifiant d'application et une clé d'application, qui sont utilisés pour appeler l'interface API de traduction Baidu.

Ensuite, nous devons présenter les packages de dépendances pertinents de l'API Java Baidu Translation. Dans le fichier pom.xml, ajoutez les dépendances suivantes :

<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>
Copier après la connexion

Ensuite, nous pouvons créer une classe d'outils TranslateUtil pour appeler l'interface API de traduction Baidu pour la traduction. Le code est le suivant :

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;
        }
    }
}
Copier après la connexion

Dans le code ci-dessus, nous appelons l'interface API de traduction Baidu pour fusionner la chaîne à traduire, l'ID de l'application, la clé et d'autres informations dans une URL, et lancer une requête HTTP. Nous analysons ensuite la réponse HTTP, obtenons les résultats de la traduction et les renvoyons.

Enfin, nous pouvons écrire une classe de test pour tester la classe d'outils TranslateUtil. Le code est le suivant :

public class TranslateTest {

    public static void main(String[] args) {
        String query = "你好";
        String result = TranslateUtil.translate(query);
        System.out.println("中文:" + query);
        System.out.println("斯洛伐克语:" + result);
    }
}
Copier après la connexion

Dans la classe de test, nous pouvons appeler la méthode de traduction de la classe d'outils TranslateUtil, saisir une chaîne chinoise à traduire et sortir la chaîne slovaque traduite.

En exécutant la classe de test, nous pouvons voir le résultat suivant :

中文:你好
斯洛伐克语:Ahoj
Copier après la connexion

Ci-dessus sont les étapes et les exemples de code pour utiliser l'API de traduction Java Baidu pour traduire entre le chinois et le slovaque. Avec l'aide de cette API, nous pouvons réaliser des traductions entre davantage de langues et améliorer la commodité et l'efficacité de la communication.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal