Maison > Java > javaDidacticiel > le corps du texte

Cas pratique de traduction mutuelle entre le chinois et l'indonésien à l'aide de l'API Java Baidu Translation

王林
Libérer: 2023-08-05 15:45:06
original
1332 Les gens l'ont consulté

Un cas pratique d'utilisation de l'API Java Baidu Translation pour traduire le chinois et l'indonésien entre eux

Aperçu
Avec le développement de la mondialisation et l'augmentation des échanges transnationaux, la demande de traduction linguistique augmente également. L'API de traduction Baidu est un outil puissant qui peut nous aider à traduire rapidement et facilement entre différentes langues. Cet article explique comment utiliser le langage de programmation Java pour réaliser une traduction mutuelle entre le chinois et l'indonésien via l'API de traduction Baidu.

Étapes de mise en œuvre

  1. Enregistrer un compte développeur Baidu
    Tout d'abord, nous devons enregistrer un compte développeur Baidu et postuler pour obtenir la clé appropriée de l'API de traduction afin d'appeler l'API en code Java. Sur la plateforme de développement Baidu, sélectionnez API de traduction et créez un compte pour obtenir l'ID et la clé de l'APP.
  2. Importer des bibliothèques dépendantes
    Dans le code Java, nous devons utiliser des classes associées telles que HttpURLConnection et BufferedReader pour interagir avec l'API. Par conséquent, les bibliothèques dépendantes pertinentes doivent être importées dans le projet. Ajoutez les dépendances suivantes dans le fichier pom.xml :
<dependencies>
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5.13</version>
    </dependency>
</dependencies>
Copier après la connexion
  1. Écriture de requêtes API
    Dans le code Java, nous devons construire une URL pour envoyer la requête HTTP et transmettre les paramètres et les clés à l'API. Nous pouvons utiliser la classe URLConnection pour réaliser :
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

public class TranslationAPI {
    public static void main(String[] args) {
        String sourceText = "中文文本"; // 需要翻译的中文文本
        String appId = "your_app_id"; // 替换为你的APP ID
        String appKey = "your_app_key"; // 替换为你的APP Key

        try {
            String encodedText = URLEncoder.encode(sourceText, "UTF-8");
            String urlStr = "http://api.fanyi.baidu.com/api/trans/vip/translate?q=" + encodedText
                    + "&from=zh&to=id&appid=" + appId + "&salt=1435660288&sign=" + generateSign(sourceText, appId, appKey);

            URL url = new URL(urlStr);
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("GET");

            BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));

            StringBuilder response = new StringBuilder();
            String line;
            while ((line = reader.readLine()) != null) {
                response.append(line);
            }
            reader.close();

            System.out.println(response.toString());

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    private static String generateSign(String sourceText, String appId, String appKey) {
        String sign = appId + sourceText + "1435660288" + appKey;
        MD5 md5 = new MD5();
        return md5.getMD5(sign);
    }
}
Copier après la connexion
  1. Analyser la réponse de l'API
    La réponse de l'API est une chaîne JSON qui contient les résultats de la traduction et d'autres informations associées. Nous pouvons utiliser la bibliothèque JSON pour analyser cette chaîne et extraire les résultats de traduction dont nous avons besoin :
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

public class TranslationAPI {
    // ...

    private static String parseTranslationResult(String response) {
        JSONObject jsonResult = JSON.parseObject(response);
        JSONArray translationArray = jsonResult.getJSONArray("trans_result");
        StringBuilder translationResult = new StringBuilder();

        for (int i = 0; i < translationArray.size(); i++) {
            JSONObject translationItem = translationArray.getJSONObject(i);
            String translatedText = translationItem.getString("dst");
            translationResult.append(translatedText).append(" ");
        }

        return translationResult.toString();
    }
}
Copier après la connexion
  1. Exécutez le code
    En utilisant le code Java écrit dans les étapes ci-dessus, nous pouvons réaliser une traduction mutuelle entre le chinois et l'indonésien. Appelez l'API de traduction dans la méthode principale et affichez le résultat :
public class TranslationAPI {
    // ...

    public static void main(String[] args) {
        String sourceText = "中文文本"; // 替换为你的中文文本

        // ...

        String translationResult = parseTranslationResult(response.toString());
        System.out.println("翻译结果:" + translationResult);
    }
}
Copier après la connexion

Ce qui précède est un cas pratique d'utilisation de Java pour réaliser une traduction mutuelle entre le chinois et l'indonésien via l'API de traduction Baidu. Grâce à ce cas, nous pouvons apprendre à appeler l'API pour envoyer des requêtes, analyser les réponses de l'API et obtenir des résultats de traduction. J'espère que cet article vous aidera à apprendre Java et à mettre en œuvre la traduction multilingue !

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!

Étiquettes associées:
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