有时候临时改了加了一些中文,然后多语言那边没有及时给到外包翻译,这时候拿个百度翻译做一下翻译,不过简单的翻译还是可以用的。

http://api.fanyi.baidu.com/api/trans/product/apidoc 这个是百度翻译api文档

代码里面必须要加appid和password(秘钥)

上面地址打开管理控制台就可以申请,是免费的

如下图,最下面是appid和秘钥

工具在tool/翻译工具

打开之后执行翻译如下图

如果定义语言类型,这个枚举定义了几种具体可以看看下面截图

public enum Language
{zh,en,spa,fra,th,ara,ru,pt,de,el,vie,cht,yue,
}

下面是完整代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System.IO;
using System;
using System.Net;
using System.Security.Cryptography;
using System.Text;public class TranslateLanguageTool : EditorWindow
{//可以直接到百度翻译API的官网申请//一定要去申请,不然程序的翻译功能不能使用private static string appId = "";private static string password = "";[MenuItem("Tools/翻译工具")]public static void Open(){GetWindow<TranslateLanguageTool>("工具");}private Dictionary<string, Dictionary<int, string>> dic = new Dictionary<string, Dictionary<int, string>>();string sourceStr = "";string id = "";public void OnGUI(){id = EditorGUILayout.TextField("id", id);sourceStr = EditorGUILayout.TextField("中文", sourceStr);if (GUILayout.Button("程序专用翻译")){GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.ara);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.en);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.fra);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.de);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.pt);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.ru);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.spa);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.cht);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.th);GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.vie);}if (GUILayout.Button("翻译")){GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.ara, "阿拉伯");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.fra, "法语");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.de, "德语");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.pt, "葡萄牙");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.ru, "俄语");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.spa, "西班牙");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.th, "泰语");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.cht, "繁体中文");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.vie, "越南语");GetTranslationFromBaiduFanyi(id, sourceStr, Language.zh, Language.en, "英文");}}private static TranslationResult GetTranslationFromBaiduFanyi(string id, string q, Language from, Language to, string language = ""){string jsonResult = String.Empty;//源语言string languageFrom = from.ToString().ToLower();//目标语言string languageTo = to.ToString().ToLower();//随机数string randomNum = System.DateTime.Now.Millisecond.ToString();//md5加密string md5Sign = GetMD5WithString(appId + q + randomNum + password);//urlstring url = String.Format("http://api.fanyi.baidu.com/api/trans/vip/translate?q={0}&from={1}&to={2}&appid={3}&salt={4}&sign={5}",q,languageFrom,languageTo,appId,randomNum,md5Sign);WebClient wc = new WebClient();try{jsonResult = wc.DownloadString(url);}catch{jsonResult = string.Empty;}//结果转jsonTranslationResult temp = LitJson.JsonMapper.ToObject<TranslationResult>(jsonResult);if (null != temp){if (string.IsNullOrEmpty(language)){for (int i = 0; i < temp.trans_result.Length; i++){string str = @"{""Key"":" + id + @",""Content"":" + @"""" + temp.trans_result[i].dst + @"""" + "},";Debug.LogError(str);}}else{for (int i = 0; i < temp.trans_result.Length; i++){string str = language + "|" + temp.trans_result[i].dst;Debug.LogError(str);}}}return null;}private static string GetMD5WithString(string input){if (input == null){return null;}MD5 md5Hash = MD5.Create();//将输入字符串转换为字节数组并计算哈希数据  byte[] data = md5Hash.ComputeHash(Encoding.UTF8.GetBytes(input));//创建一个 Stringbuilder 来收集字节并创建字符串  StringBuilder sBuilder = new StringBuilder();//循环遍历哈希数据的每一个字节并格式化为十六进制字符串  for (int i = 0; i < data.Length; i++){sBuilder.Append(data[i].ToString("x2"));}//返回十六进制字符串  return sBuilder.ToString();}
}public class Translation
{public string src { get; set; }public string dst { get; set; }
}public enum Language
{//百度翻译API官网提供了多种语言,这里只列了几种zh,en,spa,fra,th,ara,ru,pt,de,el,vie,cht,yue,
}public class TranslationResult
{//错误码,翻译结果无法正常返回public string Error_code { get; set; }public string Error_msg { get; set; }public string from { get; set; }public string to { get; set; }public string Query { get; set; }//翻译正确,返回的结果//这里是数组的原因是百度翻译支持多个单词或多段文本的翻译,在发送的字段q中用换行符(\n)分隔public Translation[] trans_result { get; set; }
}

工程下载地址

链接:https://pan.baidu.com/s/142PoZyS9jYKYDIAq9HY-Gg 
提取码:wnk9

注意必须要填appid和秘钥才能使用哦

Unity翻译工具(使用百度翻译)相关推荐

  1. python调用百度翻译-Python 调用百度翻译API

    由于实习公司这边做的是日文app,有时要看看用户反馈,对于我这种五十音图都没记住的人,表示百度翻译确实还可以.但不想每次都复制粘贴啊,google被墙也是挺蛋疼的事,所以用python结合baidu ...

  2. 全球首个突破200种语言互译的翻译引擎,百度翻译打破世界沟通壁垒

    机器翻译作为人工智能关键技术之一,正日益成为企业智能化升级的重要应用场景.12月1日,百度大脑开放日举办了以"机器翻译 沟通全世界"为主题的专场活动. IDC 中国副总裁兼首席分析 ...

  3. python 英语翻译 excel_Python调用百度翻译api批量翻译Excel这工作效率

    目录 背景 实现Excel表批量翻译,解除百度翻译一次只能5000字数的限制. 源代码 百度翻译api 这里直接使用大佬已经写好的代码,自己稍加改动.账号密码需要自行去百度翻译开放平台注册.翻译语言 ...

  4. 游戏翻译工具截屏翻译工具源代码 图片单词识别

    游戏翻译工具截屏翻译工具源代码 # -*- coding: utf-8 -*- """ Created on Mon Jan 14 23:24:05 2019 截取屏幕英 ...

  5. 计算机辅助翻译工具的主要作用,浅谈计算机辅助翻译工具TRADOS在翻译中的积极作用.pdf...

    浅谈计算机辅助翻译工具TRADOS在翻译中的积极作用.pdf z v n h @ r rn N 0 0 0 : . , o v e r s e a e ll ll e tt t h p w v r n ...

  6. 手把手教你设计一个翻译器—实现复制即翻译(基于百度翻译API)

    手把手教你设计一个翻译器 1 获取百度翻译 API 2 先简单实现调用百度翻译并打印翻译结果 3 实现复制即翻译功能 3.1 翻译剪贴板内容并在终端输出 3.2 翻译剪贴板内容并在屏幕输出 4 设计一 ...

  7. 【青少年编程】黄羽恒:翻译小工具 -- 利用百度翻译

    「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复[Scratch]或[Python],即可进入.如果加入了之前的社群不需要重复加入. 微信后台回复"资料下载&quo ...

  8. oracle数据库日志翻译工具,sql语句翻译工具

    sql语句看不懂,今天看了朋友写的一个sql语句,没看懂什么意思,还 这个应该是SQL2005以上版本的语句,且该语句用于临时用途:with关键字从resume表生成一个CTE(用表表达式,仅作用于单 ...

  9. python 实时翻译_python3调用百度翻译API实现实时翻译

    今天需要做一个翻译的工具,找到之前写过的有道翻译,已经不能用了,最后看到百度翻译还不错,不过官方版本是Python2,我需要Python3,就自己写了一个: # coding: utf8 ''' @A ...

  10. python调用百度翻译-python3调用百度翻译API实时翻译的实例代码

    python3调用百度翻译API实现实时翻译 今天需要做一个翻译的工具,找到之前写过的有道翻译,已经不能用了,最后看到百度翻译还不错,不过官方版本是Python2,我需要Python3,就自己写了一个 ...

最新文章

  1. 问题 1676: 算法2-8~2-11:链表的基本操作
  2. 算法之排列与组合算法
  3. 【比赛】论如何七天内在研究生电子设计竞赛中拿国奖
  4. linux shell 脚本 supress,Linux指令和shell脚本
  5. WORD文档的超链接无法打开——“由于本机的限制该操作已被取消”的解决方法
  6. [Java] 蓝桥杯ALGO-39 算法训练 数组排序去重
  7. 设计Twitter时间轴并进行搜索
  8. Bailian2972 确定进制(POJ NOI0113-34,POJ NOI0201-1973)【暴力+进制】
  9. xunsearch全文检索初体验
  10. CXF 不依赖spring的实现
  11. 【转】并查集算法和路径压缩
  12. 前端FISH框架学习笔记
  13. ICML22:NAFS: A SIMPLE YET TOUGH-TO-BEAT BASELINE FOR GRAPH REPRESENTATION LEARNING(ICLR22转投)
  14. Java周记(第一周)
  15. java开发系统架构_Java开发:ECP系统J2EE架构开发平台
  16. android电源管理白名单,{更新}k29去除白名单支持原生电源管理的bios(1.10;1.66)...
  17. 【新知实验室】-多人视频会议体验
  18. php遵义旅游管理系统的设计与实现毕业设计源码091801
  19. 【CNN+VIT】LocalViT: Bringing Locality to Vision Transformers
  20. 【Java岗】9月华为校招+阿里巴巴社招完整面经

热门文章

  1. 可编辑的jquery表格插件
  2. 设置双击打开.ipynb文件
  3. redis的hset hget mset mget是什么
  4. GlusterFS企业级功能之EC纠删码
  5. 微信公众号跳转小程序,详细教程
  6. i219v微星 驱动_MSI微星
  7. 计算机关闭窗口可以使用alt,电脑关闭窗口快捷键
  8. win10如何局部截图
  9. Python 实现自动刷抖音,解放双手了
  10. WPF 做的天干地支 乾坤八卦时钟表盘 可以设置24小时制