爲了讓多個程序/用戶可以讀取/寫入同一文件,我需要做些什麼?對同一文件進行多次編輯
使用案例
我有一個CSV文件,我想使多個用戶在或多或少的實時編輯。我希望能夠編寫和讀取文件中的小改動,但我也希望能夠刷新數據,並加載到我的程序中,以防整個文件被粗心的靈魂所取代。
背景
我已經看到,如果時間戳被改變,或者文件被另一程序/用戶覆蓋某些程序會刷新一個文件。 (我在用兩種不同編輯器利用不同功能編輯文件時自己使用了這個功能)。
家庭工作
我可以想象這需要我的應用程序來複制原始文件,當它最初被打開。通過這種方式,可以對原件進行任何更新以區分副本以獲取對當前數據的修改。然後當臨時文件被更新時,主文件可以被重寫。然後每個用戶/程序可以重新加載它們自己更新的文件。這是一種明智的方式/最佳做法還是有更好的方法來結束這裏。
另外一個人可以從我的理解緩存文件。
阻擋/鎖定文件是否更好?我必須對比賽條件保持警惕嗎?
環境
我打算這樣做在Python。我也希望這是平臺獨立的,例如, Linux,Windows和Mac(昂貴的Linux)。
相關
爲什麼選擇csv文件?似乎你想要一個數據庫。 –
啊,我認爲一個數據庫是去這裏的方法...... – reptilicus
如果一個數據庫不好,你有沒有考慮過使用預先存在的[協作實時編輯器](http://en.wikipedia.org/wiki/Collaborative_real-time_editor)或併發[版本控制](http://en.wikipedia。org/wiki/Revision_control)系統?這會比從頭開始寫點東西簡單得多。 – Aya