登陆注册
8120

百度翻译器在线(百度翻译器拍照官网)

大财经2023-03-22 15:51:130

public class BaiduTranslate {

baiduu翻译 java 版

public class BaiduRoot {

百度翻译同样需要申请 key

* 获得一个字符串的MD5值

/**

//

.add(&34;sign=&34; + sign)

output.setText(&34;翻译中...&34;);

}

BaiduRoot baiduu = JsonKit.toBean(body, BaiduRoot.class);

HBox box = new HBox();

.add(&34;to=&34; + (en ? &34;zh&34; : &34;en&34;))

TextArea output = new TextArea();

百度翻译开放平台 (baiduu.com) 翻译参考文档(有java版demo 代码) :http://fanyi-api.baiduu.com/origin/doc/21

btn.setOnMouseClicked(e -> {

*/

public static void main(String[] args) {

resultCharArray[index++] = hexDigits[b >>> 4 & 0xf];

} catch (NoSuchAlgorithmException e) {

boolean en = StringKit.isEn(q);

return null;

static String token = &34;替换为你的密钥&34;;

}

StringJoiner sj = new StringJoiner(&34;&&34;);

&39;e&39;, &39;f&39;};

output.setFont(Font.font(&34;宋体&34;, 20));

* @param input 输入的字符串

// 遍历字节数组,通过位运算(位运算效率高),转换成字符放到字符数组中去

}

private String dst;

String text = inputTextArea.getText();

resultCharArray[index++] = hexDigits[b & 0xf];

import dev.guu.kit.string.JsonKit;

}

output.setText(trans);

BoxMain.java

private static final char[] hexDigits = {&39;0&39;, &39;1&39;, &39;2&39;, &39;3&39;, &39;4&39;, &39;5&39;, &39;6&39;, &39;7&39;, &39;8&39;, &39;9&39;, &39;a&39;, &39;b&39;, &39;c&39;, &39;d&39;,

byte[] inputByteArray = input.getBytes(StandardCharsets.UTF_8);

} else {

if (input == null)

private String from;

createBaidu(box);

sj.add(&34;from=&34; + (en ? &34;en&34; : &34;zh&34;))

import java.net.URI;

@Data

private BaiduTransResult[] trans_result;

Platform.runLater(() -> {

import lombok.Data;

label.setFont(Font.font(&34;微软雅黑&34;, 24));

private String to;

// 字符数组组合成字符串返回

@Accessors(chain = true)

});

import java.time.LocalDate;

.add(&34;q=&34; + q)

package dev.guu.fx.translate.box.baiduu;

throw new RuntimeException(e);

System.out.println(body);

output.setText(&34;请输入&34;);

import java.util.StringJoiner;

import java.net.http.HttpResponse;

// new一个字符数组,这个就是用来组成结果字符串的(解释一下:一个byte是八位二进制,也就是2位十六进制字符(2的8次方等于16的2次方))

output.setPromptText(&34;等待输入...&34;);

messageDigest.update(inputByteArray);

static String appId = &34;替换为你的appId&34;;

@Data

import java.nio.charset.StandardCharsets;

HttpResponse<String> send = client.send(request, HttpResponse.BodyHandlers.ofString());

* @return 输入字符串的MD5值

public class BaiduTransResult {

private void createOutput(Pane root) {

} catch (IOException | InterruptedException e) {

output.setEditable(false);

@Accessors(chain = true)

private String src;

try {

}

.add(&34;appid=&34; + appId)

}

return byteArrayToHex(resultByteArray);

添加百度翻译额外内容:程序添加图标开发习惯:先完成功能,在功能确定之后,再去优化代码

String str1 = appId + q + salt + token;

// fx的多线程 ,

Label label = new Label(&34;百度翻译:&34;);

public static String md5(String input) {

char[] resultCharArray = new char[byteArray.length * 2];

.add(&34;salt=&34; + salt)

System.out.println(translate(&34;我的&34;));

url += sj.toString();

}

String body = send.body();

createYoudao(box);

HttpRequest request = HttpRequest.newBuilder()

.POST(HttpRequest.BodyPublishers.ofString(&34;a&34;))

});

// 字符数组转换成字符串返回

import dev.guu.kit.string.StringKit;

String url = &34;http://fanyi-api.baiduu.com/origin/api/trans/vip/translate?&34;;

String trans = BaiduTranslate.translate(text);

root.getChildren().add(box);

@Accessors(chain = true)

import lombok.Data;

package dev.guu.fx.translate.box.baiduu;

}

程序输出区域添加百度翻译相关显示

}

// inputByteArray是输入字符串转换得到的字节数组

int index = 0;

}

import lombok.experimental.Accessors;

import java.net.http.HttpClient;

HttpClient client = HttpClient.newHttpClient();

byte[] resultByteArray = messageDigest.digest();

private void createBaidu(HBox parent) {

parent.getChildren().add(new VBox(label,btn, output));

.uri(URI.create(url)).build();

import java.net.http.HttpRequest;

import java.io.IOException;

Button btn = new Button(&34;翻译&34;);

try {

}

// 拿到一个MD5转换器(如果想要SHA1参数换成”SHA1”)

package dev.guu.fx.translate.box.baiduu;

@Data

return null;

}

String sign = md5(str1);

static String salt = LocalDate.now().toString();

}

;

MessageDigest messageDigest = MessageDigest.getInstance(&34;MD5&34;);

import java.security.MessageDigest;

// 输入的字符串转换成字节数组

import java.security.NoSuchAlgorithmException;

import lombok.Data;

System.out.println(url);

为了方便阅读,翻译结果创建 model

.setHeader(&34;Content-type&34;, &34;application/json&34;)

import lombok.experimental.Accessors;

for (byte b : byteArray) {

*

import lombok.experimental.Accessors;

private static String byteArrayToHex(byte[] byteArray) {

// 转换并返回结果,也是字节数组,包含16个元素

public static String translate(String q) {

return JsonKit.toJsonFormat(baiduu);

if (isBlank(text)) {

return new String(resultCharArray);

0000
评论列表
共(0)条
热点
关注
推荐