問題描述
我正在嘗試將文件通過 FTP 傳輸?shù)竭h(yuǎn)程計(jì)算機(jī)上.下面是我的代碼:-
I am trying to FTP a file on to a remote machine. Below is my code :-
FTPClient ftpClient = new FTPClient();
ftpClient.connect("home.abc.com");
ftpClient.login("remote", "guesst12");
int replyCode = ftpClient.getReplyCode();
ftpClient.changeWorkingDirectory("share"))
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
InputStream input = new FileInputStream(new File("H:/testFile.txt"));
OutputStream out = ftpClient.storeFileStream("testFile.txt");
Util.copyStream(input, out);
out.close();
input.close();
ftpClient.completePendingCommand()
ftpClient.logout();
ftpClient.disconnect();
當(dāng)我執(zhí)行這段代碼時(shí),代碼執(zhí)行沒有任何問題,但是在遠(yuǎn)程機(jī)器上,當(dāng)我檢查文件時(shí),正在創(chuàng)建文件,但沒有內(nèi)容 (OKB) 文件.我在代碼中遺漏了什么嗎?
When i execute this piece of code, the code is executed without any issues, but at the remote machine, when i check the file, the file is being created, but with no content (OKB) file. Am i missing something in code.
[更新]:我嘗試使用以下代碼存儲(chǔ)文件:-
[Update] : I tried with the following code for storing file :-
if(ftpClient.storeFile("testCopy.txt", input)) {
System.out.println("File Stored Successfully");
}
System.out.println(ftpClient.getReplyString());
現(xiàn)在我收到的回復(fù)代碼是:- 451 寫入本地文件失敗.
這是什么意思.
Now the reply code i recieved is :- 451 Failure writing to local file.
What does that means.
謝謝
推薦答案
看了一遍又一遍后,我不斷想出不同的東西.
After looking at it over and over I keep coming up with different things.
您確定 InputStream 在您復(fù)制流之前正在讀取文件嗎?因?yàn)槲也淮_定 FileInputStream 讀取的是啟動(dòng)時(shí)的文件.
Are you sure that the InputStream is reading the file before your copying the stream? Because I'm not sure FileInputStream read's the file on initiation.
這篇關(guān)于在 java 中完成 FTP 后創(chuàng)建 0 kb 文件的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!