网约车宝典 电脑版
作为一个资深网约车司机,分享一下接单技巧。1 服务分 首先服务分是比较重要的,网约车是按服务分(高) 优先派单。所以要把服务做好。2 位置问题 车头尽量 朝向 学校 商场 小区 系统派单一般会把单派在...
2024.11.22开发习惯:先完成功能,在功能确定之后,再去优化代码
详情百度翻译同样需要申请 key
百度翻译开放平台 (baidu.com) 翻译参考文档(有java版demo 代码) :https://fanyi-api.baidu.com/doc/21
为了方便阅读,翻译结果创建 model
package dev.guu.fx.translate.box.baidu;import lombok.Data;import lombok.experimental.Accessors;@Data@Accessors(chain = true)public class BaiduRoot {private String from;private String to;private BaiduTransResult[] trans_result;}package dev.guu.fx.translate.box.baidu;import lombok.Data;import lombok.experimental.Accessors;@Data@Accessors(chain = true)public class BaiduTransResult {private String src;private String dst;}baidu翻译 java 版
package dev.guu.fx.translate.box.baidu;import dev.guu.kit.string.JsonKit;import dev.guu.kit.string.StringKit;import lombok.Data;import lombok.experimental.Accessors;import java.io.IOException;import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;import java.nio.charset.StandardCharsets;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import java.time.LocalDate;import java.util.StringJoiner;@Data@Accessors(chain = true)public class BaiduTranslate {static String salt = LocalDate.now().toString();static String appId = "替换为你的appId";static String token = "替换为你的密钥";public static void main(String[] args) {//System.out.println(translate("我的"));}public static String translate(String q) {String str1 = appId + q + salt + token;String sign = md5(str1);String url = "https://fanyi-api.baidu.com/api/trans/vip/translate?";StringJoiner sj = new StringJoiner("&");boolean en = StringKit.isEn(q);sj.add("from=" + (en ? "en" : "zh")).add("q=" + q).add("to=" + (en ? "zh" : "en")).add("appid=" + appId).add("salt=" + salt).add("sign=" + sign);url += sj.toString();System.out.println(url);HttpClient client = HttpClient.newHttpClient();HttpRequest request = HttpRequest.newBuilder().POST(HttpRequest.BodyPublishers.ofString("a")).setHeader("Content-type", "application/json").uri(URI.create(url)).build();try {HttpResponse send = client.send(request, HttpResponse.BodyHandlers.ofString());String body = send.body();System.out.println(body);BaiduRoot baidu = JsonKit.toBean(body, BaiduRoot.class);return JsonKit.toJsonFormat(baidu);} catch (IOException | InterruptedException e) {throw new RuntimeException(e);}}private static final char[] hexDigits = {‘0‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘, ‘7‘, ‘8‘, ‘9‘, ‘a‘, ‘b‘, ‘c‘, ‘d‘,‘e‘, ‘f‘};/** * 获得一个字符串的MD5值 * * @param input 输入的字符串 * @return 输入字符串的MD5值 */public static String md5(String input) {if (input == null)return null;try {// 拿到一个MD5转换器(如果想要SHA1参数换成”SHA1”)MessageDigest messageDigest = MessageDigest.getInstance("MD5");// 输入的字符串转换成字节数组byte[] inputByteArray = input.getBytes(StandardCharsets.UTF_8);// inputByteArray是输入字符串转换得到的字节数组messageDigest.update(inputByteArray);// 转换并返回结果,也是字节数组,包含16个元素byte[] resultByteArray = messageDigest.digest();// 字符数组转换成字符串返回return byteArrayToHex(resultByteArray);} catch (NoSuchAlgorithmException e) {return null;}}private static String byteArrayToHex(byte[] byteArray) {// new一个字符数组,这个就是用来组成结果字符串的(解释一下:一个byte是八位二进制,也就是2位十六进制字符(2的8次方等于16的2次方))char[] resultCharArray = new char[byteArray.length * 2];// 遍历字节数组,通过位运算(位运算效率高),转换成字符放到字符数组中去int index = 0;for (byte b : byteArray) {resultCharArray[index++] = hexDigits[b >>> 4 & 0xf];resultCharArray[index++] = hexDigits[b & 0xf];}// 字符数组组合成字符串返回return new String(resultCharArray);}}程序输出区域添加百度翻译相关显示
BoxMain.java
private void createOutput(Pane root) {HBox box = new HBox();root.getChildren().add(box);createYoudao(box);createBaidu(box);}private void createBaidu(HBox parent) {Label label = new Label("百度翻译:");Button btn = new Button("翻译");label.setFont(Font.font("微软雅黑", 24));TextArea output = new TextArea();output.setPromptText("等待输入...");output.setEditable(false);output.setFont(Font.font("宋体", 20));parent.getChildren().add(new VBox(label,btn, output));btn.setOnMouseClicked(e -> {String text = inputTextArea.getText();if (isBlank(text)) {output.setText("请输入");} else {output.setText("翻译中...");// fx的多线程 ,Platform.runLater(() -> {String trans = BaiduTranslate.translate(text);output.setText(trans);});}});}作为一个资深网约车司机,分享一下接单技巧。1 服务分 首先服务分是比较重要的,网约车是按服务分(高) 优先派单。所以要把服务做好。2 位置问题 车头尽量 朝向 学校 商场 小区 系统派单一般会把单派在...
2024.11.22在高德地图天天玩花样的时候,百度地图最新的动作似乎特别的少。但今天,百度终于放出了大招。今天,百度地图宣布,百度地图PC版已经升级为全新的WebGL技术引擎,使用体验会有进一步提升。具体来说,新引擎支...
2024.11.22Pandownload相信大家都不陌生了,这块曾经风靡一时的百度网盘破解版很多人都用过的上次官网升级的时间为2019.08月,2019除夕夜2020.1.24再度更新,此次的更新官网日志非常简短,更新...
2024.11.22本软件采用通用网页识别技术,能够智能转码各大小说网站的目录和章节页面,同时内置全网搜索功能,整合百度、360搜索结果,支持多线程下载,让你轻轻松松下载任意小说~~小说下载器2.0重磅升级!1.全新界面...
2024.11.21前两天发的手机AAP——山寨云,可以直接将百度云的文件生成链接下载,但是因为可能下载速度不太稳定,而且用迅雷下载的时候无法使用会员加速,所以有的小伙伴向小编反映有没有更好用的软件,那么今天小编再分享一...
2024.11.20