Home > Java > javaTutorial > Java Baidu Translation API implements mutual translation between multiple languages

Java Baidu Translation API implements mutual translation between multiple languages

王林
Release: 2023-08-05 16:53:05
Original
678 people have browsed it

Java Baidu Translation API implements the practice of mutual translation between multiple languages

Overview:
With the development of globalization, language translation has become an indispensable part of daily life. Now, we can perform online translation through various open API interfaces, which greatly facilitates our communication and understanding. Among them, Baidu Translation API is a very commonly used one. This article will introduce how to use the Java programming language to call Baidu Translation API to achieve translation between multiple languages.

Steps:

  1. Register Baidu Translation API and obtain the key
    Register one on Baidu Translation Open Platform (https://fanyi-api.baidu.com/) account and create a new application. During the application creation process, you will be assigned an appid and key (ak).
  2. Import Java HTTP client package
    When using Baidu Translation API in a Java project, you need to import the HTTP client package in order to make network requests. Here we can use Apache's HttpClient package. In the Maven project, you can add the following code to the dependencies of the pom.xml file:
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.10</version>
</dependency>
Copy after login
  1. Write a Java method for translation function
    In the Java class, write a method with Call Baidu Translation API for text translation. The following is a sample code:
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
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;
public class Translator {
    private static final String BASE_URL = "http://api.fanyi.baidu.com/api/trans/vip/translate";
    private static final String APPID = "your_appid";
    private static final String SECRET_KEY = "your_secret_key";
    public static String translate(String query, String from, String to) throws UnsupportedEncodingException {
        CloseableHttpClient httpClient = HttpClients.createDefault();
        String salt = String.valueOf(System.currentTimeMillis());
        String sign = MD5(APPID + query + salt + SECRET_KEY);
        String url = BASE_URL + "?q=" + URLEncoder.encode(query, "UTF-8") + "&from=" + from + "&to=" + to + "&appid=" + APPID + "&salt=" + salt + "&sign=" + sign;
        HttpGet httpGet = new HttpGet(url);
        try (CloseableHttpResponse response = httpClient.execute(httpGet)) {
            HttpEntity entity = response.getEntity();
            if (entity != null) {
                String responseString = EntityUtils.toString(entity, "UTF-8");
                // 解析返回的JSON字符串
                // ...
                // 获取翻译结果,返回翻译后的文本
                // ...
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    private static String MD5(String md5) {
        // ...
        // 使用MD5算法对字符串进行加密
        // ...
        return null;
    }
}
Copy after login
  1. Call the translation method and output the result
    In the main method of the Java class, call the translation method and output the result. The following is a sample code:
public class Main {
    public static void main(String[] args) throws UnsupportedEncodingException {
        String query = "Hello world";
        String from = "en";
        String to = "zh";
        String translation = Translator.translate(query, from, to);
        System.out.println("翻译结果:"+translation);
    }
}
Copy after login

Summary:
Through the above steps, we can use the Java programming language to call the Baidu Translation API to achieve translation between multiple languages. In actual development, we can use this method to translate user-entered text into multiple languages, or to translate text between different languages ​​into each other. This approach makes it easy to integrate language translation capabilities into our applications, providing better user experience and communication effects.

The above is the detailed content of Java Baidu Translation API implements mutual translation between multiple languages. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template