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{})
- 导入包:
- 。。。
写入自己的博客中才能记得长久
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!