我有一個普通的IO問題。我試圖用ascii編碼的文件替換單行。經過多次搜索,我發現這是不可能的。根據我讀到的內容,如果需要在文件中替換一行,整個文件需要重寫。我讀過這對所有操作系統都是一樣的。 \ nIO問題:寫入一個文件的一部分
什麼讓我再次想知道這是我一直在使用「.dat」和「 .idx「文件的數據庫。該程序不斷讀取和寫入數據庫。所以我的問題是,它顯然需要一次只寫入小部分(db大小約爲200mb),因此每次寫入整個文件都不是有效的。所以我的問題是,像這樣的程序對於這樣的問題有什麼樣的解決方案。它會寫入內存,然後每次都重寫整個數據庫。它會編寫臨時文件,然後在某個時候將它們合併到數據庫中?或者是否可以編寫db中的單個(或多個)行而不寫入整個文件?
關於此任何信息將不勝感激!
THX
NT
請記住,您只能替換文件中的東西(或附加到它) - 不刪除或插入東西因此,如果你想替換一個「行」,你的新行將必須具有與舊的一。 – nos 2010-07-25 23:33:57