| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- /*
- * Copyright 2019-2020 Zheng Jie
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- package me.zhengjie.utils;
- import cn.hutool.json.JSONArray;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import java.net.URLEncoder;
- /**
- * @author Zheng Jie
- * 翻译工具类
- */
- public class TranslatorUtil {
- public static String translate(String word){
- try {
- String url = "https://translate.googleapis.com/translate_a/single?" +
- "client=gtx&" +
- "sl=en" +
- "&tl=zh-CN" +
- "&dt=t&q=" + URLEncoder.encode(word, "UTF-8");
- URL obj = new URL(url);
- HttpURLConnection con = (HttpURLConnection) obj.openConnection();
- con.setRequestProperty("User-Agent", "Mozilla/5.0");
- BufferedReader in = new BufferedReader(
- new InputStreamReader(con.getInputStream()));
- String inputLine;
- StringBuilder response = new StringBuilder();
- while ((inputLine = in.readLine()) != null) {
- response.append(inputLine);
- }
- in.close();
- return parseResult(response.toString());
- }catch (Exception e){
- return word;
- }
- }
- private static String parseResult(String inputJson){
- JSONArray jsonArray2 = (JSONArray) new JSONArray(inputJson).get(0);
- StringBuilder result = new StringBuilder();
- for (Object o : jsonArray2) {
- result.append(((JSONArray) o).get(0).toString());
- }
- return result.toString();
- }
- }
|