回答
O_APPEND
本身不是一个模式;这是一面旗帜。由于O_RDONLY
的值为0,这就好比你试图打开文件只读而附加,这是无稽之谈。使用O_WRONLY|O_APPEND
或O_RDWR|O_APPEND
。
严格地说,不使用任何'O_RDONLY','O_RDWR'或'O_WRONLY'的open是未定义的行为,在Linux的特定情况下,'O_RDONLY = 0 ',所以碰巧结果是这样:) – bdonlan
ok!我不知道!谢谢! –
据我所知,在所有的历史实现中,“O_RDONLY”都是0。 –
- 1. 以追加模式打开管道
- 2. 以追加模式打开文件,但截断文件
- 3. 使用java打开文件并追加
- 4. 无法以追加或写入模式打开文件
- 5. 使用打开的xml文件格式API打开文字2003(doc)文件API
- 6. 以追加模式打开文件时,如何重新定位文件指针?
- 7. 在写入和追加模式下打开文件
- 8. 以写入模式打开文件
- 9. 如何以ROOT模式打开文件?
- 10. 打开一个文件追加
- 11. 如何追加到C文件,在Linux上使用O_APPEND模式打开?
- 12. 打开一个QFile以追加
- 13. 打开链接追加
- 14. Qt文件追加开放模式
- 15. 使用excellibrary以共享模式打开文件
- 16. 如何使用vbscript以读写模式打开qtp(.usr)文件
- 17. 使用pkg_resources时以universal-newline模式打开文件?
- 18. 如何增加_open_osfhandle使用的打开的Windows打开文件?
- 19. WebDav - 文档以只读模式打开
- 20. 以只读模式打开word文档
- 21. 打开文件流运API
- 22. C打开文件:打开文件
- 23. 使用模拟打开文件
- 24. Java在使用java7打开zipfile文件内的附加模式下打开2.2GB的大文件时出错NIO
- 25. grails emacs模式 - “无法打开加载文件”“项目模式”
- 26. 如何使用打开文件对话框打开文件
- 27. 打开fancybox模式
- 28. 打开二进制文件的模式
- 29. Python打开()模式和文件写作
- 30. C++中的文件打开模式
似乎它应该工作。 –
另外,在strace下运行你的程序的输出是什么?它如何失败? – bdonlan
你是否检查'write'返回的值'n'是什么?使用printf打印出来然后检查。另外,在写入文件后关闭文件。 –