[java]izpack3.7.2 安装制作工具 中文问题解决
来源:互联网 发布:网络分配器的作用 编辑:程序博客网 时间:2024/05/18 23:27
izpack,一个开源的安装制作工具, java编写。做出来的东西基本上中规中矩。
使用中碰到不少中文问题,一一解决如下:
1. 中文界面乱码:
修改chn.xml, 这个文件的编码被很奇怪的转码了,试验了半天才搞定。编辑scrapbook page, 评估如下代码:
java.io.file f = new java.io.file("c:\\program files\\izpack\\bin\\langpacks\\installer\\chn.xml");
byte[] a = new byte[(int)f.length()];
new java.io.datainputstream(new java.io.fileinputstream(f)).readfully(a);
new string(new string(new string(a,"gbk").getbytes(),"utf-8").getbytes("iso8859-1"))
碰到这种乱码问题可以使用暴力破解,一般转码不会超过三重,以后类似问题可以采用:
static string[] encodings ={ "gbk", "iso8859-1", "big5", "shift-jis",
"utf-8", "unicode" };
public static void main(string[] args) throws unsupportedencodingexception {
string input = "脨露脭脴";
for (int i = 0; iencodings.length; i++) {
for (int j = 0; jencodings.length; j++) {
for (int k = 0; kencodings.length; k++) {
system.out.println(new string(new string(input
.getbytes(encodings[i]), encodings[j])
.getbytes(encodings[k]))
+ "\t"
+ encodings[i]
+ "/"
+ encodings[j]
+ "/"
+ encodings[k]);
}
}
}
}
2. 安装后菜单不出来。
在document and settings\%your account%\下面能看到一个乱码的目录,所以开始菜单上不会出来,桌面上不出来也是这个原因。
原因:shortlink.dll中没用unicode, 所以中文读出来是gbk,被错误当成iso8859-1转码了。
解决:尝试在shortlink.java中取到的乱码字符串重新getbytes后组合,发现有字符丢失,看样转换中有损耗。
最后决定用byte[]传递字符串,在dll中读到的中文按照字节数组传递给java, java根据系统属性io.encoding(gbk)编码得到字符串。
折腾了两天终于成功安装了~~~,但是。。。卸载界面还有中文问题。。。faint, 有空再搞吧,小问题了。
碰到的几个小tip:
1. 菜单配置shortcutspec.xml文件中如果指定的xxx不存在,不会报错,菜单也不会安装。
2. 如果执行的文件不存在,菜单创建画面会很慢。shortcutpanel要放到文件好之后执行。
3. 制作安装时如果文件不存在,没有出错提示,屏幕上最后出现的文件名应该就是有问题的。
这里下载提到的补丁文件:http://files.cnblogs.com/steeven/izpack3.7.2_chiese_patch.zip
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
- [java]izpack3.7.2 安装制作工具 中文问题解决
- Java应用程序安装包制作工具简介
- Java应用程序安装包制作工具简介
- Java中文问题解决方案
- JAVA中文问题解决总结
- JAVA中文问题解决总结
- java中文问题解决方案
- java中文问题解决方法
- java中文乱码问题解决
- 安装包制作工具
- 安装包制作工具
- [转载]应用程序(Java程序)安装包制作工具简介
- java+xml中文问题解决方法
- Java中文乱码问题解决心得
- Java/JSP中文乱码问题解决
- Java/JSP中文乱码问题解决
- java中的中文乱码问题解决!
- java+mysql 中文乱码问题解决
- Java NIO - Buffer 基础 -1
- Android SDK Tools Setup 提示 “ java se development kit not found”
- MFC 在对话框中添加WM_ERASEBKGND响应函数
- 堆与栈的解析-以数组为例,解析数组在内存中的分布(JAVA基础-课堂笔记)
- java中ResultSet如何定位一条记录
- [java]izpack3.7.2 安装制作工具 中文问题解决
- whbell-blog
- aurawing
- 黑马程序员_单例设计模式
- VC获取系统时间、程序运行时间
- Winsocket入门教程三:以Windows消息机制驱动的客户端程序
- CString.Format 及 printf的输入格式
- C#浏览器拿IFrame和Frame里的ActiveElement
- cxDBTreeList控件(如何使用\主要是新增父级子级\)