我想在不覆蓋任何內容的情況下寫入文件。這是一個包含記錄的文本文件。當我刪除一個特定的記錄時,我實際上並沒有將它從文件中刪除,我只是將信息放在標題中說明它已被刪除。我怎樣才能做到這一點?如何追加到g ++中的文本開頭
回答
無法從頭開始重寫文件而無法附加到文件的開頭部分。它必須走到最後(這是有道理的,因爲這就是「追加」這個詞的意思)。
如果您希望能夠在不爲該標記預留空間的情況下將記錄標記爲已刪除,則需要將信息放在末尾或重寫所有內容。
更明智的做法的確是預留空間 - 例如在每個記錄中放置一個「已刪除」字段。
如果我在開始的地方預留空白空間,我可以存儲有關刪除哪些文件的信息,該怎麼辦? – neuromancer
@Phenom,這就是他的建議。偉大的想法順便說一句(+1 @邁克爾)。 – Cam
他建議通過在每條記錄中放置一個字段預留空間。我實際上是在談論保留文件前面的空間。 – neuromancer
一個可行的辦法是,如果有這些記錄中通常dissallowed某些字符(好像每個文件是一個記錄 - 請糾正我,如果我錯了):
使用這些字符結合一些單詞標記的編號(例如,##已刪除#或#000,如果#是記錄中通常不允許的字符)。
然後,只需改寫記錄開始處發生的任何事情;它已被刪除,因此覆蓋其中一部分並不重要。
另一方面,如果您預計需要恢復'已刪除'的文件,這可能不是一個好主意。順便說一句 - 如果你在文件末尾添加了被刪除的標誌,請注意,如果你知道文件大小,就很容易檢查它 - 只要看看文件的末尾。
- 1. 將文本追加到文件中每行的開頭
- 2. 如何在JavaScript中將節點追加到div的開頭?
- 3. 追加到數組的開頭
- 4. 追加到NSString方法的開頭
- 5. 如何將文本追加到文件
- 6. 如何追加到文本文件?
- 7. 如何將文本追加到div的
- 8. 追加值到列表開頭
- 9. 如何將文本追加到C++文本文件中?
- 10. 如何將文本追加到黑莓文本文件中
- 11. 追加到S3中的文本文件
- 12. 追加到C中的文本文件
- 13. echo >>風格追加,但到一個文件的開頭
- 14. 追加到文本文件
- 15. 如何將文件添加到開頭?
- 16. 如何將文本追加到現有的文本文件
- 17. 如何向文件中以「hello」開頭的行添加文本
- 18. 如何將文本添加到文件夾中所有文件的開頭?
- 19. g ++找不到頭文件
- 20. 如何將數據追加到Python 2.7.11中的文本文件?
- 21. 如何將一行文本追加到SQLCMD中的文件
- 22. 如何將文本追加到Objective C中的文件?
- 23. 如何追加到Nativescript中的文件?
- 24. C++在linux中添加頭文件-g ++
- 25. 如何使用jQuery將文本追加到文本框的值?
- 26. jQuery ..如何將文本追加到現有文本的末尾?
- 27. 的cron PHP如何阻止頭在追加到文件
- 28. 在Python中追加文本到文件
- 29. 如何將文本作爲頁眉和頁腳追加到文件的開頭和結尾?
- 30. 追加外部文件到頭
我想你是指prepend。 – Cam