浏览 4015 次
锁定老帖子 主题:AIX下的中文文件路径问题
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-06-27
在将java编写的Web应用部署到AIX系统下出现中文文件路径问题。 环境:AIX4.3,jdk1.5, tomcat5.0, 运行tomcat的file.encoding设置为GB18030 AIX语言为西文。 现象:1.不能通过new File创建中文文件路径; 2.获得的目录树如果包含中文路径,显示为乱码。 由于war为在window下打包,怀疑是javac的问题,于是直接在AIX下写了测试的java并以application运行,结果正确。 进一步将工程在aix下使用ant重新build,启动tomcat,运行结果确仍然乱码。 于是怀疑在西文的AIX下不能java的 new File(),或者File.getName(),不能处理非iso-8859-1的文件路径。 将写入和读出的文件路径经过程序处理: 待写入的路径转化为iso-8859-1编码的String : public static String toLocalFN(String fn){ return new String(fn.getBytes(),"iso-8859-1"); } 相应地,获得的文件路径按照iso-8859-1编码处理 public static String fromLocalFN(String fn){ return new String(fn.getBytes("iso-8859-1")); } 直接在windows下ant,将jar部署到AIX下,结果创建中文路径和获取中文路径都顺利通过。 此解决方法需要检查工程中所有的文件读写,比较麻烦。 不知道有没有更好的解决办法? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |