Maison  >  Article  >  Java  >  L'API Java Baidu Translation réalise une traduction mutuelle entre le chinois et l'anglais

L'API Java Baidu Translation réalise une traduction mutuelle entre le chinois et l'anglais

PHPz
PHPzoriginal
2023-08-26 23:36:25834parcourir

LAPI Java Baidu Translation réalise une traduction mutuelle entre le chinois et langlais

L'API de traduction Java Baidu réalise une traduction mutuelle entre le chinois et l'anglais

Ces dernières années, avec la demande croissante de traduction mutuelle entre le chinois et l'anglais, divers outils et API de traduction ont également vu le jour. Parmi eux, l'API Baidu Translation est l'un des outils couramment utilisés par de nombreux développeurs. Cet article explique comment utiliser le langage Java combiné à l'API de traduction Baidu pour réaliser la fonction de traduction mutuelle entre le chinois et l'anglais.

Tout d'abord, nous devons créer un compte développeur Baidu et créer une application de traduction. Lors de la création d’une application de traduction, nous obtiendrons un AppID et une clé (App Key). Ces informations constituent les informations d'identification nécessaires pour que nous puissions appeler l'API de traduction Baidu.

Ensuite, nous devons introduire les dépendances pertinentes. Dans le fichier pom.xml du projet, ajoutez le code suivant :

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.13</version>
</dependency>

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20200518</version>
</dependency>

Les deux dépendances ci-dessus sont les bibliothèques Apache HttpClient et JSON, qui sont utilisées pour envoyer des requêtes HTTP et traiter les données JSON.

Ensuite, nous devons créer une classe de traduction pour encapsuler la méthode d'appel de l'API de traduction Baidu. Dans cette classe, nous devons définir une méthode qui accepte le texte à traduire et la langue cible comme paramètres et renvoie le résultat de la traduction. Voici un exemple de code :

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

import org.json.JSONArray;
import org.json.JSONObject;

public class Translation {
    private final String url = "http://api.fanyi.baidu.com/api/trans/vip/translate";
    private String appId = "your_app_id";
    private String appKey = "your_app_key";
    
    public String translate(String text, String targetLang) {
        try {
            String encodedText = URLEncoder.encode(text, "UTF-8");
            String fullUrl = url + "?q=" + encodedText + "&from=auto&to=" + targetLang + "&appid=" + appId + "&salt=1&sign=" + generateSign(text);

            URL apiUrl = new URL(fullUrl);
            HttpURLConnection connection = (HttpURLConnection) apiUrl.openConnection();
            connection.setRequestMethod("GET");

            BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            String inputLine;
            StringBuilder response = new StringBuilder();

            while ((inputLine = in.readLine()) != null) {
                response.append(inputLine);
            }
            in.close();

            JSONObject jsonResponse = new JSONObject(response.toString());
            JSONArray transResult = jsonResponse.getJSONArray("trans_result");
            JSONObject result = transResult.getJSONObject(0);

            String translatedText = result.getString("dst");
            return translatedText;
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "";
    }
    
    private String generateSign(String text) {
        // 在这里根据百度翻译API的要求,生成签名
        // 可以参考百度翻译API的文档
        return "";
    }
}

Dans le code ci-dessus, nous utilisons Apache HttpClient pour envoyer des requêtes HTTP et analyser les données JSON renvoyées via la bibliothèque JSON. Nous devons remplacer "your_app_id" et "your_app_key" dans le code par notre AppID et notre clé réels.

Enfin, nous pouvons appeler la méthode de classe de traduction dans la classe principale du projet pour réaliser la fonction de traduction entre le chinois et l'anglais. Voici un exemple de code :

public class Main {
    public static void main(String[] args) {
        Translation translation = new Translation();
        
        // 中文翻译为英文
        String text = "你好,世界!";
        String targetLang = "en";
        String translatedText = translation.translate(text, targetLang);
        System.out.println("中文翻译为英文: " + translatedText);
        
        // 英文翻译为中文
        String textToTranslate = "Hello, world!";
        String targetLanguage = "zh";
        String translatedText = translation.translate(textToTranslate, targetLanguage);
        System.out.println("英文翻译为中文: " + translatedText);
    }
}

En exécutant le code ci-dessus, nous pouvons réaliser une fonction de traduction mutuelle simple entre le chinois et l'anglais.

Pour résumer, cet article explique comment utiliser le langage Java combiné avec l'API de traduction Baidu pour réaliser la fonction de traduction mutuelle entre le chinois et l'anglais. En utilisant l'API de traduction Baidu, nous pouvons facilement implémenter la fonction de traduction de texte et l'utiliser de manière flexible dans le développement. J'espère que l'exemple de code de cet article pourra fournir aux lecteurs une référence pour appliquer l'API de traduction Baidu dans des projets réels.

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!

Déclaration:
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