java ftp上传超时_有关java的ftp上传文件时断网的问题
該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓
我有一個(gè)java的ftp程序,他既是客戶端又是服務(wù)端,我把程序放在兩臺電腦上運(yùn)行,
computer1和computer2,在computer1為文件上傳端,computer2為文件的接收端,
在computer1中的文件上傳代碼:
//調(diào)用上傳文件的命令
TelnetOutputStream?tos=ftpClient.put(file);
//打開一個(gè)輸出流
DataOutputStream?dos=new?DataOutputStream(tos);
//循環(huán)讀取文件上傳數(shù)據(jù),while((sendFile.getFilePointer()+1)?
while((dataLength=sendFile.read(b))!=-1)
{
dos.write(b,0,dataLength);//把數(shù)據(jù)寫入輸出流
dos.flush();
}
在computer2的接收文件代碼:
RandomAccessFile?receiveFile=new?RandomAccessFile(requestfile,"rw");
BufferedInputStream?bin?=?new?BufferedInputStream(dsocket.getInputStream());
bin?=?new?BufferedInputStream(dsocket.getInputStream());
while((dataLength?=?bin.read(buf))!=-1)
{
receiveFile.write(buf,0,dataLength);//寫入文件
}//while()
但是,當(dāng)文件在上傳的過程中,我把computer1端(發(fā)送端)的網(wǎng)線斷開了,再重新連接上的話,在發(fā)送端就可以獲得異常,實(shí)現(xiàn)重新連接到computer2,但是在computer2的接受代碼中不會出現(xiàn)異常,但是ftpClient已經(jīng)是斷開了,無法再重新連接到computer1了。
要怎樣才能實(shí)現(xiàn)computer2在接收數(shù)據(jù)的同時(shí),如果computer1斷網(wǎng)了,獲取到異常等,等computer1重新連接上網(wǎng)絡(luò)時(shí),可以重新連接到computer1,繼續(xù)上傳文件。
總結(jié)
以上是生活随笔為你收集整理的java ftp上传超时_有关java的ftp上传文件时断网的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java map removeall_J
- 下一篇: oracle中存储过程可见权限,Orac