2013-11-21 63 views
0

試圖編寫一個相當簡單的程序,該程序從ftp服務器逐行讀取一個文件,將每行存儲在一個字符串中,然後將該字符串寫入到驅動器上的本地文件中。現在這很簡單,並且完美地工作。當原始文件被修改時更新文本文件的副本

這是棘手的部分。每當ftp上的ORIGINAL文件被更新時(添加一個新行),我都希望將該行添加到先前創建的LOCAL文件中。如果文件不同,我不想重新複製整個文件內容。我只是想添加缺失的行。

這有什麼辦法可以做到嗎?任何提示將不勝感激。您不必提交代碼。讓我知道這是如何在邏輯上完成的,我會嘗試爲它編寫代碼。

Regards

+0

「將文件從FTP服務器複製到本地驅動器」是什麼意思?你的意思是「複製」,如「通過ftp傳輸」,或者你的意思是「複製」,如「從驅動器C複製到驅動器D:」?你的問題非常模糊,你需要更清楚你要問什麼。請再次修改,以便我們盡力幫助您。謝謝。 –

+0

它讀取ftp服務器上的文本文件中的每一行,並將每行寫入本地文本文件(c:/)。 –

回答

0

無法通過FTP本身從FTP服務器讀取「逐行」文件。

FTPFile Transfer Protocol的簡稱,用於傳輸文件。通過該協議無法做任何其他事情。如果你想「逐行」訪問它,你將不得不使用FTP以外的東西。

+0

好的。我明白我的整個問題很混亂。讓我們暫時忽略它在FTP服務器上的時間。假設我有兩個相同的文件副本。複製1和複製2.現在每次複製1在最後添加新行時,我都希望在複製2中添加此行。 每10秒鐘,我的程序會檢查複製1和複製2是否相同。如果是的話,什麼也不做。如果沒有,那麼程序會將MISSING LINES(在副本1的末尾)複製到副本2中。是否可以不必從頭開始重新創建副本2的內容? –

+0

當然,如果您願意同時打開「Copy1」和「Copy2」(這不可能通過FTP)。您可以要求Windows在本地或網絡驅動器文件發生更改時通知您,打開這兩個文件,比較行數,然後將不在'Copy1'中的行附加到'Copy2'。儘管這兩個文件都必須全部可用,以便比較內容。但是你*不能*忽略它通過FTP的事實,因爲這是你在這裏提出的問題。如果你有*不同的問題*,你需要發佈一個新的*不同的問題。 –

相關問題