Windows API的CreateFile()中的OPEN_ALWAYS和CREATE_ALWAYS之间的差异

转自:http://www.voidcn.com/article/p-uzrihrua-bte.html

任何人都可以解释Windows API的  CreateFile()功能的创建配置OPEN_ALWAYS和CREATE_ALWAYS之间的区别?

对我来说,似乎他们只是简单地“创建文件,如果它不存在”。

 
如果文件已经存在,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

猜你喜欢

转载自www.cnblogs.com/csstudy/p/11656257.html