- 浏览: 1543325 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (225)
- JAVA (27)
- Spring (49)
- Linux (51)
- JavaScript (8)
- Scrum (23)
- IDE (2)
- JSON (2)
- Solr (0)
- Webharvest (0)
- Hibernate (8)
- 杂谈 (3)
- Windows 7 (4)
- 持续集成 (23)
- tomcat (3)
- Android (1)
- SpringSecurity (11)
- Maven (9)
- jotm (3)
- C3P0 (1)
- Active Directory (2)
- cas (1)
- JQuery (2)
- ajax (1)
- plsql (2)
- nginx (4)
- apache (1)
- thrift (7)
- python (3)
- oracle (4)
- php (2)
- redis (1)
- fedora (1)
- windows7 (0)
- SVN (1)
- NFS (1)
- SAMBA (1)
- Atomikos (1)
- apache-poi (1)
- mysql (2)
- vncserver (1)
- mac (2)
- firefox (1)
- JIRA (1)
- p6spy (1)
- git (1)
- github (1)
- gitlab (1)
- gogs (1)
- Druid (1)
- MyBatis (1)
- docker (8)
- zabbix (1)
最新评论
-
lialatd:
您好,我用您的方法通过java api往jira系统中添加is ...
JIRA REST API ---- JAVA -
sprcen945:
可以了,是因为没加intercept-url 的拦截, 尼玛, ...
SpringSecurity3.X--Cas client 配置 -
sprcen945:
请问为什么我配了security.xml后切入点不起作用(之前 ...
SpringSecurity3.X--Cas client 配置 -
linxingyul:
根据楼主的代码 继承了WebMvcConfigurationS ...
SpringMVC4零配置--Web上下文配置【MvcConfig】 -
java_老头:
MvcConfig.java的FilterType.ANNOT ...
SpringMVC4零配置--Web上下文配置【MvcConfig】
在开发时,经常会用到多语言支持的问题,常用的解决方案是将各个语言文字放到properties文件中,但中文是需要转为ascii的,一般来说常用的解决方案有以下几种:
一.jdk的native2ascii
举例:
1.转换一行文字
进入jdk的bin目录,双击native2ascii.exe,输入“你好”,【回车】,屏幕上显示\u4f60\u597d
2.转换一个文件
cmd命令行中执行(注意配置好path环境变量)
d:\>native2acsii aa.properties bb.properties
如此一来就aa.properties 中的中文字符转换后保存进bb.properties 文件中。注意如果其中含有英文字符,则原样输出。
二.ant
可以一次就转换n多个文件
- <targetname="i18n">
- <native2asciiencoding="GBK"src="${src.dir}"dest="${build.dir}"includes="*.properties"/>
- </target>
三.eclipse插件
如果是MyEclipse,安装插件方式如下:
安装步骤:
1、展开Eclipse的Help菜单,将鼠标移到Software Update子项,在出现的子菜单中点击Find and Install;
2、在Install/Update对话框中选择Search for new features to install,点击Next;
3、在Install对话框中点击New Remote Site;
4、在New Update Site对话框的Name填入任意字符串中文也可以,在URL中填入http://propedit.sourceforge.jp/eclipse/updates/;然后可能需要先点击finish,不过依然会出现后面的部分(根据版本的不同而定)
5、在Site to include to search列表中,除上一步加入的site外的其它选项去掉,点击Finsih;
6、在弹出的Updates对话框中的Select the features to install列表中将所有结尾为“3.1.x”的选项去掉(适用于Eclipse 3.2版本的朋友);
7、点击Finish关闭对话框;
8、在下载后,同意安装,再按提示重启Eclipse,在工具条看到形似vi的按钮表示安装成功,插件可用。此时,Eclpise中所有properties文件的文件名前有绿色的P的图标作为标识。
9、properties文件使用PropertiesEditor(右键,openwith,一般来说安装插件后默认就会使用这个编辑器)打开,输入中文,编辑器会自动将其转换为ascii码
如果是Eclipse,展开help,选择Install new software,add,输入地址,确定后eclipse会进行自动搜索,不过安装插件时会出现无法安装的情况,此时可以下载我提供的安装包,
下载地址:http://download.csdn.net/source/1488797
可以直接将插件包解压后的features和plugins两个文件夹复制到eclipse的home目录下,重启eclipse即可。
ps:个人感觉插件比较方便,当然你要使用eclipse。
另外提供一个将ascii码转换为中文的java代码,从网上找的
原文地址:http://hi.baidu.com/hrhero/blog/item/2ea6d6fa53b8c319a8d311ab.html
public class Ascii2Native {
public static void main(String[] args) {
File f=new File("E:\\workspaces\\cas_workspace\\CASServer\\src\\messages_zh_CN.properties");
if (f.exists() && f.isFile()) {
// convert param-file
BufferedReader br = null;
String line;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(f), "JISAutoDetect"));
while ((line = br.readLine()) != null) {
System.out.println(ascii2native(line));
}
} catch (FileNotFoundException e) {
System.err.println("file not found - " + f);
} catch (IOException e) {
System.err.println("read error - " + f);
} finally {
try {
if (br != null)
br.close();
} catch (Exception e) {
}
}
} else {
// // convert param-data
// System.out.print(ascii2native(args[i]));
// if (i + 1 < args.length)
System.out.print("wen");
}
}
/**
* core routine
*/
public static String ascii2native(String str) {
String hex = "0123456789ABCDEF";
StringBuffer buf = new StringBuffer();
int ptn = 0;
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c == '\\' && i + 1 <= str.length() && str.charAt(i + 1) == '\\') {
buf.append("\\\\");
i += 1;
} else if (c == '\\' && i + 6 <= str.length() && str.charAt(i + 1) == 'u') {
String sub = str.substring(i + 2, i + 6).toUpperCase();
int i0 = hex.indexOf(sub.charAt(0));
int i1 = hex.indexOf(sub.charAt(1));
int i2 = hex.indexOf(sub.charAt(2));
int i3 = hex.indexOf(sub.charAt(3));
if (i0 < 0 || i1 < 0 || i2 < 0 || i3 < 0) {
buf.append("\\u");
i += 1;
} else {
byte[] data = new byte[2];
data[0] = i2b(i1 + i0 * 16);
data[1] = i2b(i3 + i2 * 16);
try {
buf.append(new String(data, "UTF-16BE").toString());
} catch (Exception ex) {
buf.append("\\u" + sub);
}
i += 5;
}
} else {
buf.append(c);
}
}
return buf.toString();
}
/**
* unsigned integer to binary
* <P>
*
* @param i
* unsigned integer
* @return binary
*/
private static byte i2b(int i) {
return (byte) ((i > 127) ? i - 256 : i);
}
}
ps:最近发现了一个更好用的插件,可以同时编辑一组properties文件,http://www.guh-software.de/jinto_en.html,恩好东西。
发表评论
-
JIRA REST API ---- JAVA
2015-09-24 15:51 13426最近在搞自动化监控 ... -
Thrift--JSClient
2013-09-26 14:45 6022thrift提供了基于jquery--ajax的客户端调用 ... -
Thrift--Spring集成ThriftServlet
2013-09-25 11:42 11164Thrift除了可以通过TCP协议访问,还可以通过HTTP ... -
Thrift转SpringHttpInvoker
2013-09-24 13:26 1807关于在spring中集成Thrift请参看:http://h ... -
Thrift--JavaServer&PythonClient遇到的问题
2013-09-23 10:16 1483thrift在java中的应用参考:http://hanqu ... -
Spring集成Thrift--Server AND Client
2013-09-04 20:13 13795Thrift网上有N多教程, ... -
Windows Server 2008 Active Directory 安装及使用笔记
2013-03-22 18:49 26991.安装AD http://www.docin.com/ ... -
C3P0配置实战
2012-09-04 18:34 51942C3P0: 一个开源的JDBC连接池,它实现了数据源和JN ... -
使用Spring3.1 Cache注解+EHCache遇到的问题
2011-10-20 17:48 10415关于Spring3.1 Cache注解的介绍请参看http:/ ... -
JAVA压缩与解压缩--zip
2011-03-03 16:52 3443通过java打zip包或者解压 ... -
java调用Shell脚本
2009-07-10 13:13 2337原文地址:http://hi.baidu.com/qiu115 ... -
JDK5 Annotation(注释)的用法
2009-07-10 13:27 1831原文地址:http://hi.baidu.com/gaoyao ... -
JDK 1.5中的ENUM用法
2009-07-10 13:30 1345原文地址:http://www.cnblogs.com/jac ... -
java反射介绍
2009-07-10 14:31 1141一。课程:检查类 1.获得Class对象 得到 ... -
jdk1.5泛型介绍
2009-07-11 09:42 1140原文地址:http://www.matrix.org.cn/r ... -
巧用系统属性
2009-07-15 11:22 1934我们都曾在项目中使用 ... -
String与InputStream相互转换
2009-07-20 18:48 17631.String to InputStream String ... -
java.util.Date 与java.sql.Date相互转换
2009-07-21 10:57 17401.java.util.Date to java.sql.Da ... -
Java中执行Shell(.sh)和windows批量处理(.bat)
2009-07-21 21:39 1794原文之地:http://blog.csdn.net/Nicol ... -
java验证日期格式
2009-07-24 21:02 1783public static boolean checkDate ...
相关推荐
Java自定义实现本地语言与ASCII之间的互相转换。可在开发项目中直接调用的工具类。
ascii码 与 字符串 相互转化 ascii码 与 字符串 相互转化 ascii码 与 字符串 相互转化
本文将深入探讨VB中的字符和ASCII码之间的相互转换,并提供相关实践示例。 ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是一种基于拉丁字母的一套电脑编码系统,最初被设计...
本软件"ASCII码转换器"提供了字符与ASCII码之间的相互转换功能。用户可以输入任何字符,包括汉字,程序会显示出该字符的ASCII码值。对于汉字,由于ASCII码只适用于英文字符,所以在这里显示的是汉字的机内码,也称为...
ASCII码转换器是一款实用工具,能够帮助用户将字符与对应的ASCII码之间进行相互转换。在IT领域,了解和使用ASCII码非常重要,因为它是计算机科学的基础之一。以下是一些相关的知识点: 1. ASCII码的基本结构:ASCII...
在提供的"ASCII码及汉字内码-转换器(1).exe"程序中,很可能是设计用来帮助用户直观地将ASCII码和汉字内码进行相互转换的工具。这样的工具对于开发者调试、文本处理或者理解编码原理非常有用。用户可以通过输入相应...
然而,随着计算机技术的发展,全球化的交流需求日益增强,ASCII码无法满足非英文字符,特别是中文字符的表示。这就催生了Unicode的诞生。Unicode是一个通用字符集,旨在包含世界上所有语言的字符,包括但不限于拉丁...
然而,了解ASCII码及其转换方法仍然是理解和处理文本数据的基础,尤其在处理旧系统或与老式设备交互时。 总结起来,ASCII码是计算机通信和文本处理的基础,它通过数字与字符的对应关系实现了信息的标准化交换。字符...
在很多情况下,即使是处理非ASCII字符集的数据,底层仍然可能使用ASCII码进行转换和传输。 尽管如此,ASCII码仍然存在一些局限性。由于它只使用了7位二进制数,所以能够表示的字符数量非常有限,只有一百多种。随着...
字符互相转换在实际应用中非常常见。例如,如果你在一个只支持ASCII的系统中尝试输入非英文字符,可能会出现乱码。此时,就需要将UTF-8编码的文本转换为ASCII,但这通常意味着非ASCII字符将被替换为问号或其他替代...
支持汉字、内码、unicode码之间相互的码制转换
汉字和ASCII码之间相互转换,方便编程使用。如: ActionRemove.SHORT_DESCRIPTION=删除 ActionRemove.SHORT_DESCRIPTION=\u5220\u9664
字符转换:字符转换为10进制(ASCII码)并且可偏移ASCII码,及16进制及其逆操作。 转换为10进制的双字节字符(例如汉字)有:正数、负数、字节分离三种表示方法 支持加入前置及后置字符,可轻松组合出UTF-8编码等...
在电子工程、计算机科学以及嵌入式系统开发等领域,串口通信是一种常见的数据传输方式,而ASCII码与HEX之间的转换则常用于数据格式的处理和解析。 串口调试助手3,如标签所示,是这个工具的第三个版本,可能包含了...
用于在PHP无法使用 iconv 函数和 mb_string 库的情况下,实现GB2312与UNICODE的相互转换。 正确转换的前提是你的系统是简体中文版的Windows。 包内附加一个UNICODE转换为GB2312的函数,看看里面的函数就明白了。 有...
在PHP中实现ASCII码与字符串相互转换,通常涉及到字符串的遍历、替换和编码转换等操作。这里提供了一个名为`ascii`的类,包含两个方法:`decode()`和`encode()`。 1. `decode()`方法用于将ASCII码字符串转换为普通...
其中字符转换为ASCII码中,如果字符为汉字(即双字节) 可选择:正数、负数或者字节分离三种表示方式 利如汉字"中" 正数:54992 负数:-10544 字节分离:214,208 说明: 如果包含汉字字符,且选了负数或字节分离表示方式...
5. **其他编码转换**:一些高级的ASCII转换器可能还支持与Unicode、UTF-8、ISO-8859等其他编码系统的相互转换,以适应不同语言和地区的字符需求。 在使用`ascii.exe`这个特定的程序时,用户可能需要打开文件,选择...
国标码的编码原则是:汉字用两个字节表示,原则上,两个字节可以表示 256×256=65536 种不同的符号,但为了与标准 ASCII 码兼容,每个字节中都不能再用32个控制功能码和码值为 32 的空格以及 127的操作码。...
字符转换:字符转换为10进制(ASCII码)及16进制及其逆操作。 转换为10进制的汉字字符有:正数、负数、字节分离三种表示方法 支持加入前置及后置字符,可轻松组合出UTF-16编码等字符 键盘码的查询:以10和16进制...