为了让多个程序/用户可以读取/写入同一文件,我需要做些什么?对同一文件进行多次编辑
使用案例
我有一个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