Golang 常用示例
Laeni
2023-01-11
文件
Go文件和路径相关的功能分散在os
、path
、filepath
、io
(从1.6
和1.7
起,ioutil
包的内容已经移动到os
包和io
包)包中。
os
代码包中的 API 让我们拥有操控计算机操作系统的能力。主要是帮助我们使用操作系统中的文件系统、权限系统、环境变量、系统进程以及系统信号。
其中,操纵文件系统的 API 最为丰富。我们不但可以利用这些 API 创建和删除文件以及目录,还可以获取到它们的各种信息、修改它们的内容、改变它们的访问权限,等等。
文件操作模式/选项
分类 | 名称 | 十进制表示 | 二进制表示 | 说明 |
---|---|---|---|---|
读写模式 | O_RDONLY | 0x0 | 000000000000000000000 | 以只读方式打开文件 |
读写模式 | O_WRONLY | 0x1 | 000000000000000000001 | 以只写方式打开文件 |
读写模式 | O_RDWR | 0x2 | 000000000000000000010 | 以读写方式打开文件 |
行为模式 | O_CREATE | 0x40 | 000000000000001000000 | 如果不存在则创建一个新文件 |
行为模式 | O_EXCL | 0x80 | 000000000000010000000 | 创建一个新文件,且文件必须不存在(与O_CREATE 一起使用) |
行为模式 | O_TRUNC | 0x200 | 000000000001000000000 | 打开时截断(清空)常规可写文件 |
行为模式 | O_APPEND | 0x400 | 000000000010000000000 | 写入时将数据追加到文件中 |
行为模式 | O_SYNC | 0x101000 | 100000001000000000000 | 为同步 IO 打开,它会保证读写的内容总会与硬盘上的数据保持同步 |
读写模式必须指定其中一个(三选一),且可以使用
|
将任意行为模式和读写模式组合使用,如O_RDONLY|O_CREATE|O_TRUNC
。