增加 Go 文件操作.
Signed-off-by: rick.chan <chenyang@autoai.com>
This commit is contained in:
parent
b9322b4e66
commit
c4de5dbd88
|
@ -0,0 +1,54 @@
|
||||||
|
# Go 文件操作
|
||||||
|
|
||||||
|
## 1.文本文件
|
||||||
|
|
||||||
|
### 1.1.创建
|
||||||
|
|
||||||
|
```go
|
||||||
|
f,err := os.Create(fileName)
|
||||||
|
defer f.Close()
|
||||||
|
if err !=nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
} else {
|
||||||
|
_,err=f.Write([]byte("要写入的文本内容"))
|
||||||
|
checkErr(err)
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### 1.2.读取
|
||||||
|
|
||||||
|
```go
|
||||||
|
f, err := os.OpenFile(fileName, os.O_RDONLY,0600)
|
||||||
|
defer f.Close()
|
||||||
|
if err !=nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
} else {
|
||||||
|
contentByte,err=ioutil.ReadAll(f)
|
||||||
|
checkErr(err)
|
||||||
|
fmt.Println(string(contentByte))
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
打开模式如下:
|
||||||
|
|
||||||
|
```go
|
||||||
|
//打开方式
|
||||||
|
const (
|
||||||
|
//只读模式
|
||||||
|
O_RDONLY int = syscall.O_RDONLY // open the file read-only.
|
||||||
|
//只写模式
|
||||||
|
O_WRONLY int = syscall.O_WRONLY // open the file write-only.
|
||||||
|
//可读可写
|
||||||
|
O_RDWR int = syscall.O_RDWR // open the file read-write.
|
||||||
|
//追加内容
|
||||||
|
O_APPEND int = syscall.O_APPEND // append data to the file when writing.
|
||||||
|
//创建文件,如果文件不存在
|
||||||
|
O_CREATE int = syscall.O_CREAT // create a new file if none exists.
|
||||||
|
//与创建文件一同使用,文件必须存在
|
||||||
|
O_EXCL int = syscall.O_EXCL // used with O_CREATE, file must not exist
|
||||||
|
//打开一个同步的文件流
|
||||||
|
O_SYNC int = syscall.O_SYNC // open for synchronous I/O.
|
||||||
|
//如果可能,打开时缩短文件
|
||||||
|
O_TRUNC int = syscall.O_TRUNC // if possible, truncate file when opened.
|
||||||
|
)
|
||||||
|
```
|
Loading…
Reference in New Issue