gpt4 book ai didi

java - 解析从谷歌翻译的 translate_a 返回的响应

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:51:48 25 4
gpt4 key购买 nike

我目前正在尝试使用 Google 翻译的“免费”API 翻译字符串。

function我目前有以下内容:

static String sourceLang = "en";
static String targetLang = "de";

public static void translate(String msg) throws Exception {

msg = URLEncoder.encode(msg, "UTF-8");
URL url = new URL("http://translate.googleapis.com/translate_a/single?client=gtx&sl=" + sourceLang + "&tl="
+ targetLang + "&dt=t&q=" + msg + "&ie=UTF-8&oe=UTF-8");

URLConnection uc = url.openConnection();
uc.setRequestProperty("User-Agent", "Mozilla/5.0");

BufferedReader in = new BufferedReader(new InputStreamReader(uc.getInputStream(), "UTF-8"));
String inputLine;

while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}

in.close();
}

例如返回我

[[["Das ist ein Satz","This is a sentence",,,3]],,"en"]

[[["Dies ist ein weiterer Satz mit einigen Symbolen \"$% \u0026 / () = º ~ ª ^","This is another sentence with a few symbols \"$%\u0026/()=º~ª^",,,3]],,"en"]

我一直在研究一些 JSON 解析方法,但找不到将其转换为 JSON 然后将这 3 个字符串解析为三个 String 或 String[] 的方法。

关于如何正确完成它的任何想法?

提前致谢!

最佳答案

这段代码可以解决问题:

    Pattern p = Pattern.compile("\"([^\"]*)\"");
String line = "yourtext";
Matcher m = p.matcher(line);
while (m.find()) {
System.out.println("m.group(1)=" + m.group(1));
}

关于java - 解析从谷歌翻译的 translate_a 返回的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41028831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com