2013-01-01 69 views
0

我需要两个文件指针(FILE *)彼此并行操作。一种是应用附加操作,另一种是读取和覆盖。C:同步两个文件指针到同一个文件

我需要从一个指针追加到文件以被其他文件指针识别,以便另一个文件指针可以正确读取并覆盖此附加数据。

要同步数据,似乎在附加文件指针上使用fflush()的作品(至少对于阅读它),但是这是实现我想要的并且是便携式的正确方法吗?

谢谢。

回答

3

你应该可以用一个指针来做到这一点(因此不必进行不必要的同步)。当你想在最后添加时使用fseek(f, SEEK_END, 0);。使用“rb +”使文件可读和可写。

只要你不使用多个线程来访问文件,这应该工作得很好。

+0

过去,这无论如何都是因为什么原因一直失败,但我会再试一次...... –

+0

好吧......现在当我尝试它时,它确实有效。出于某种原因,我努力让rb +在之前的附加工作,但不是很好。我一定做了一些非常错误的事情。谢谢。 –

+0

只要你不追求文件的末尾[尽管在某些系统中,那也可以],就应该工作。 –

相关问题