【发布时间】:2010-10-11 07:58:56
【问题描述】:
我正在使用 FTP 客户端在 Java 中进行 FTP Get,如果我在 Windows 上运行它可以正常工作,但是当我在 linux 机器上运行它时,它会得到经过一些修改的文件。
我有一个大小为 2872578 的 test.tar.gz 文件(一堆文本文件),但当我在 linux 上运行我的 java 程序时,它显示为 2872541。有人遇到过类似的问题吗?
//write files to local FS
OutputStream output = null;
for(int i = 0; i < files.length; i++)
{
if(files[i].getName().compareTo(file) == 0 || files[i].getName().compareTo("*") ==0)
if(!files[i].getName().startsWith(".") && files[i].getType() != 1)
{
try {
if(targetdir != null)
output = new FileOutputStream(new File(targetdir + files[i].getName()));
else
output = new FileOutputStream(new File(files[i].getName()));
System.out.println("Creating: " + files[i].getName());
client.retrieveFile(files[i].getName(), output);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
【问题讨论】:
-
只是浏览“FTP windows linux 文件大小”让我不得不问:您是以 ASCII 模式还是 BINARY 模式传输?它应该是 BINARY。
标签: java windows linux ftp client