go文件拷贝

一、文件拷贝

二、从命令行读取参数

我们首先编译程序,然后执行test.exe时,放置三个参数,它们会被记录到os.Args切片中。

 

三、解析命令行选项:flag包

在flag包中有这个一个结构体

以下代码用于模拟Linux的echo命令

演示效果

 

四、用buffer读取文件

本示例结合 缓冲读取文件 和 flag解析命令行 两项技术。

模拟Linux的cat命令。

 

 

 

第一个参数不是一个文件,而是一个io.Writer接口类型的变量。

接口定义如下

 

fmt.Fprintf() 依据指定的格式向第一个参数内写入字符串,第一参数必须实现了 io.Writer 接口。

Fprintf() 能够写入任何类型,只要其实现了 Write 方法。

包括 os.Stdout, 文件(例如 os.File),管道,网络连接,通道等等。

同样的也可以使用 bufio 包中的缓冲写入。

bufio 包中定义了 type Writer struct{...}。

在缓冲写入的最后千万不要忘了使用 Flush(),否则最后的输出不会被写入。

 

使用fmt.Fprint函数向http.ResponseWriter写入,因为http.ResponseWriter实现了io.Writer接口。

posted @ 2021-10-14 14:00  道霖  阅读(265)  评论(0)    收藏  举报