我正在做一個FTP獲取Java與FTP客戶端,如果我在Windows上運行正常,但是當我在Linux上運行相同的盒子時,它給我的文件做了一些修改。FTP獲取在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 filesize'上瀏覽一下,就不得不問:你是以ASCII還是BINARY模式傳輸?它應該是BINARY。 – Konerak 2010-10-11 08:03:39