2017-02-23 69 views
1

log4j.appender.LOGFILE.Append =真Log4j的,追加=真正的意義/假

的醫生說:

如果追加參數爲true,該文件將被追加到。否則,由filename指定的文件將在被打開之前被截斷。

是否意味着如果Append = true,新的日誌會被追加到文件的尾部?那麼「截斷」是指什麼?內容將在打開文件之前被刪除?

謝謝。

+1

是的,「截斷」的意思是「縮短」 - 在這種情況下,基本上,文件將被覆蓋,就好像它從未存在過。 –

+0

@JonSkeet謝謝Jon – Rangtian

+0

@JonSkeet這是一種微不足道的,但這應該是一個答案,因爲它回答了OP的問題。否則它將永遠不會被接受的答案,對吧? – Fildor

回答

4

是的,「由文件名指定的文件將被截斷」意味着任何以前存在於該文件中的數據將會消失。這不僅僅是日誌記錄,這是一個更一般的概念

假設你有一個文件最初包含數據「AB」:

  • 如果你打開它追加值「C」,該文件最終將包含「ABC」。

  • 如果將其打開爲截斷然後寫入「C」,則文件最終將包含「C」。

  • 如果打開它而不截斷覆蓋,則文件最終將包含「CB」。 (這很少是一個有用的選項。)