- 论坛徽章:
- 0
|
使用ant的FTP Task上传中文文件名的文件
本来想学用python来写脚本的,但懒得学,想想其实ant也可以满足要求了.
昨天我想用ant的FTP task上传中文文件名的文件到服务器,但上传之后中文名变成乱码,但文件里的内容没问题.我想是在服务器新建文件时出现编码的问题.
在org.apache.commons.net.ftp.FTP的sendCommand(String command, String args)里找到问题所在,
是_controlOutput.write(message = __commandBuffer.toString());这句出了问题,_controlOutput是BufferedWriter类,应该可以设编码.
后来在org.apache.tools.ant.taskdefs.optional.net.FTP的execute()里加了句 ftp.setControlEncoding("gb2312");就解决问题了.
以后改一下FTP task, 给它加个ControlEncoding的属性适用性就更广了.
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/5013/showart_16269.html |
|