0666)
- 文件拷贝
- 拷贝一个文件到另外一个文件,使用io包
- src, err := os.Open(srcName)
- dst, err := os.OpenFile(dstName, os.O_WRONLY|os.O_CREATE, 0644)
- io.Copy(dst, src)
- 从命令行读取参数
- os包总有一个string类型的切片变量os.Args,用来存放命令行参数
- os.Args[1:]
- flag包
- flag包有一个扩展功能,用来解析命令行选项。类似python的argparse
- outputWriter := bufio.NewWriter(outputFile)
- outputWriter.WriteString(outputString)
- compress包:读取压缩文件
- 支持格式bzip、flate、gzip、lzw和zlib
- fz, err := gzip.NewReader(fi)
- 写文件
- outputFile, outputError := os.OpenFile("output.dat", os.O_WRONLY|os.O_CREATE,
- 键盘输入
- os.Stdin/os.Stout/os.Stderr
- fmt.Scan:臊面来自标准输入的文本
- fmt.sscan:从字符串中读取
- 缓冲读取:bufio
- inputReader := bufio.NewReader(os.Stdin)
- Input, err = inputReader.ReadString('\n')
- 文件读写
- 文件句柄:os.File、os.Stdin、os.Stdout(os.Open()之后生成文件句柄)
- inputFile, inputError := os.Open("input.dat")
- 文件结束符:if readerError == io.EOF { 。。。}
- 将整个文件的内容读到一个字符串量
- Io/ioutil: ioutil.ReadFile()
- 带缓冲的读取:
- 文件内容不安航划分,或者是二进制文件,不能用ReadString(),直接用bufio.Reader的Read()
- inputReader.Read(buf)
- 按列读取文件中的数据
- 数据是按列排列并用空格分隔的。
- 使用fmt提供的FScan系列读取
- fmt.Fscanln(file, &v1, &v2, &v3)