谁能解释创建配置OPEN_ALWAYS
和Windows APICREATE_ALWAYS
的CreateFile()函数之间的区别是什么?
对我来说,他们似乎都只是“如果文件不存在则创建文件”。
谁能解释创建配置OPEN_ALWAYS
和Windows APICREATE_ALWAYS
的CreateFile()函数之间的区别是什么?
对我来说,他们似乎都只是“如果文件不存在则创建文件”。
CREATE_ALWAYS
如果文件已经存在,也会截断内容。另一方面,OPEN_ALWAYS
不会破坏已经存在的文件。
以下是不同值以表格形式工作的方式:
| When the file...
This argument: | Exists Does not exist
-------------------------+------------------------------------------------------
CREATE_ALWAYS | Truncates Creates
CREATE_NEW +-----------+ Fails Creates
OPEN_ALWAYS ===| does this |===> Opens Creates
OPEN_EXISTING +-----------+ Opens Fails
TRUNCATE_EXISTING | Truncates Fails