Day 07,终端读写, 文件读写, 命令行参数,Json 数据协议
Day 07
终端读写
-
终端读写
操作终端相关文件句柄常量
os.Stdin标准输入os.Stdout标准输出os.Stderr标准错误输出 -
终端读写示例
-
带缓冲区的读写
package main import ( "bufio" "fmt" "os" ) var inputReader *bufio.Reader var input string var err error func main() { inputReader = bufio.NewReader(os.Stdin) fmt.Print("Please enter some input: ") input, err = inputReader.ReadString('\n') if err == nil { fmt.Printf("The input was: %s\n", input) } } -
练习,从终端读取一行字符串,统计英文、数字、空格及其他字符的数量。
文件读写
os.File封装所有文件相关操作,之前讲的os.Stdin,os.Stdout,os.Stderr都是*os.File- 打开一个文件进行读操作:
os.Open(name string) (*File, error) - 关闭一个文件:
File.Close()
- 打开一个文件进行读操作:
- 文件操作示例
- 读取整个文件示例
- 读取压缩文件示例
- 文件写入
- 拷贝文件
命令行参数
os.Args是一个string的切片,用来存储所有的命令行参数- flag 包的使用,用来解析命令行参数。
- 命令行参数解析
Json 数据协议
- Json 数据协议
- 导入包:
import "encoding/json" - 序列化:
json.Marshal(data.interface{}) - 反序列化:
json.UnMarshal(data []byte, v interface{})
- 导入包:
- 。。。
写入自己的博客中才能记得长久

浙公网安备 33010602011771号