2016-12-07 129 views
0

我有一個文件1,我想它的內容複製到另一個fil2e。之後,我添加了一些內容到file1。現在我想將file1中新添加的部分附加到file2中,以便兩個文件保持同步。最初我想過逐字節地檢查,但對於大文件來說效率非常低。複製的內容,而不復制現有內容

在此先感謝。

+0

寫詳細的說明。你正在使用文本文件還是什麼 –

+1

確定文件2的長度,尋找文件1中的那個位置並從那裏開始複製。 – djna

+0

您可以讀取文件1並將其另存爲字符串,然後讀取文件2並將其另存爲字符串。現在您可以從file2.length開始將文件1的子字符串附加到文件1 – XtremeBaumer

回答

0

您可以使用FileChannel.transferTo:使用您的文件

Path file1 = /* ... */ ; 
Path file2 = /* ... */ ; 

try (FileChannel channel1 = FileChannel.open(file1); 
    FileChannel channel2 = FileChannel.open(file2, 
     StandardOpenOption.WRITE, StandardOpenOption.APPEND)) { 

    channel1.transferTo(channel2.size(), Long.MAX_VALUE, channel2); 
}