2016-03-16 24 views
0

好吧,我的總體目標是創建一個UWP筆記應用程序,不需要最終用戶手動保存他們寫的每個筆記;這將自動爲他們完成。通過代碼更新文本文件時,整個文件是重新保存還是僅保存部分?

所以我要做的是創建一個C#類,它將檢測用戶當前正在編寫的文檔的變化,並不斷更新基礎文本文件(這最終會寫入數據庫中的一行,但我聽說不斷更新數據庫中的記錄比處理文本文件的效率更低?)。

但是,這是幾乎像OneNote這樣的應用程序在用戶的後臺執行的操作,因此用戶不必擔心在計算機斷電或應用程序意外終止的情況下保存文件或丟失數據。

因此,如果我創建了一個類來檢測文檔的更改,然後更新底層文件,是重寫的整個文件還是僅在文本內(或附加到)文本中更改的特定部分(字節?)?

我只是在尋找持續更新文件的最有效方式,因爲如果用戶是快速打字員,系統必須能夠跟上每一個按鍵輸入。

最後,如果用戶隨機更改隨機位置的文本(而不是追加到文件末尾),整個文件是否必須重寫?這是否有意義?我傾向於寫很多問一個簡單的問題。我有問題....

回答

0

我會做一個timertick事件並讓它每3到5秒自動保存一次。我這樣做很多。我明白你在做什麼,但是自動保存每一個關鍵點,都會給程序帶來很大的壓力。

如果檢測到變化,則可以節省我會自動每隔幾秒鐘節省如果基礎上,

。想想這個答案,如果通過擊鍵完成,它已經被保存了將近100次。

+0

Thx反饋。是的,這實際上更有意義。我想我從來沒有考慮過這個問題,因爲我從來沒有聽說過一個timetick類,但是值得研究。 Thx,再次。 – JonathanR33D

+0

轉到您的工具箱並創建一個計時器。在代碼中的時間裏,把你想要更新或保存的東西放在裏面。我使用這很多,因爲我忘了在我的應用程序中保存的東西。所以我每隔幾秒鐘就會保存一次,然後我也讓它在同一個計時器中更新文件。所以當我關閉應用程序並重新打開它。一切都是我想要的方式。 – ivansystems

相關問題