用'Apache的FTPClient上传.gz文件至linux系统后,用gunzip命令进行解压报错,请大侠给个明确解释!
如下:
gunzip xxx.csv.gz
gunzip: xxx.csv.gz: invalid compressed data--crc error
gunzip: xxx.csv.gz: invalid compressed data--length error
/**
 * 向FTP服务器上传文件
 * 
 * @param url
 *            FTP服务器IP
 * @param port
 *            FTP服务器端口
 * @param username
 *            FTP登录账号
 * @param password
 *            FTP登录密码
 * @param path
 *            FTP服务器保存目录
 * @param filename
 *            上传到FTP服务器上的文件名
 * @param input
 *            输入流
 * @return 成功返回true,否则返回false
 */
public static boolean uploadFile(String url, int port, String username,
String password, String path, String filename, InputStream input)
{
boolean success = false;
FTPClient ftp = new FTPClient();

try
{
// 设置以二进制方式传输
//ftp.setFileType(FTP.BINARY_FILE_TYPE);
ftp.enterLocalPassiveMode();//设置被动模式
int reply;
ftp.connect(url, port);
// 登录
ftp.login(username, password);
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply))
{
ftp.disconnect();
return success;
}
// 找到目标路径
ftp.changeWorkingDirectory(path);
// 储藏
ftp.storeFile(filename, input);
input.close();
ftp.logout();
success = true;
}
catch (IOException e)
{
logger.error("向FTP服务器上传文件异常:", e);
}
finally
{
if (ftp.isConnected())
{
try
{
ftp.disconnect();
}
catch (IOException ioe)
{
}
}
}
return success;
}