CreateFile()中的OPEN_ALWAYS和CREATE_ALWAYS之间的差异
2021-07-01
100
0
任何人都可以解释Windows API的 CreateFile()功能的创建配置OPEN_ALWAYS和CREATE_ALWAYS之间的区别?
对我来说,似乎他们只是简单地“创建文件,如果它不存在”。
如果文件已经存在,CREATE_ALWAYS也会截断内容。另一方面,OPEN_ALWAYS不会破坏已经存在的文件。
以下是表格形式中不同值的工作原理:
参数 | 文件存在 | 文件不存在 |
---|---|---|
CREATE_ALWAYS | Truncates | Creates |
CREATE_NEW | Fails | Creates |
OPEN_ALWAYS | Opens | Creates |
OPEN_EXISTING | Opens | Fails |
TRUNCATE_EXISTING | Truncates | Fails |