登陆注册
8120

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

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

}

return byteArrayToHex(resultByteArray);

}

System.out.println(url);

String str1 = appId + q + salt + token;

import java.net.http.HttpResponse;

private String to;

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

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

* @return 输入字符串的MD5值

@Data

百度翻译同样需要申请 key

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

try {

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

} catch (NoSuchAlgorithmException e) {

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

@Accessors(chain = true)

btn.setOnMouseClicked(e -> {

int index = 0;

public static String md5(String input) {

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

}

root.getChildren().add(box);

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

import java.net.http.HttpRequest;

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

import java.security.NoSuchAlgorithmException;

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

import java.security.MessageDigest;

messageDigest.update(inputByteArray);

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

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

return null;

import java.nio.charset.StandardCharsets;

* 获得一个字符串的MD5值

private String from;

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

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

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

createBaidu(box);

TextArea output = new TextArea();

}

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

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

} else {

private void createOutput(Pane root) {

import java.net.http.HttpClient;

try {

import java.time.LocalDate;

import lombok.experimental.Accessors;

}

private String src;

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

String trans = BaiduTranslate.translate(text);

private static String byteArrayToHex(byte[] byteArray) {

String text = inputTextArea.getText();

@Accessors(chain = true)

}

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

baiduu翻译 java 版

for (byte b : byteArray) {

} catch (IOException | InterruptedException e) {

}

import dev.guu.kit.string.StringKit;

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

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

import lombok.experimental.Accessors;

});

}

}

if (input == null)

;

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

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;,

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

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

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

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

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

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

public static String translate(String q) {

public class BaiduRoot {

@Data

boolean en = StringKit.isEn(q);

});

/**

output.setText(trans);

return new String(resultCharArray);

import lombok.Data;

*/

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

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

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

* @param input 输入的字符串

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

private BaiduTransResult[] trans_result;

import java.io.IOException;

// fx的多线程 ,

String body = send.body();

@Accessors(chain = true)

@Data

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

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

createYoudao(box);

import lombok.Data;

byte[] resultByteArray = messageDigest.digest();

String sign = md5(str1);

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

private String dst;

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

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

url += sj.toString();

HBox box = new HBox();

import java.net.URI;

//

if (isBlank(text)) {

BoxMain.java

System.out.println(body);

import java.util.StringJoiner;

}

throw new RuntimeException(e);

output.setEditable(false);

HttpClient client = HttpClient.newHttpClient();

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

*

return JsonKit.toJsonFormat(baiduu);

public static void main(String[] args) {

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

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

}

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

}

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

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

public class BaiduTranslate {

HttpRequest request = HttpRequest.newBuilder()

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

Platform.runLater(() -> {

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

private void createBaidu(HBox parent) {

}

public class BaiduTransResult {

import dev.guu.kit.string.JsonKit;

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

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

import lombok.Data;

import lombok.experimental.Accessors;

return null;

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