fmt标准库

fmt包实现了类似于C语言printf和scanf的格式化I/O。主要分为向外输出内容和向内输入内容两大部分

向外输出

标准库fmt提供一下几种输出相关函数

Print

Print 系列函数会将内容输出到西戎的标准输出,区别在于Print函数会直接输出内容,Print函数支持格式化输出字符串,Println函数会在输出内容的结尾添加一个换行符

func Print(a...interface{})(n int,err error)
func Printf(format string,a...interface{})(n int,err error)
func Println(a ...interface{})(n int,err error)

举个简单例子

func main(){
    fmt.Print("在终端打印信息")
    name:="沙河小王子"
    fmt.Printf("我是:%s\n",name)
    fmt.Println("在终端内打印单独一行显示")
}

上面的代码输出:

在终端打印该信息。我是:沙河小王子
在终端打印单独一行显示

Fprint

Fprint系列函数会将内容输出到一个io.Writer接口的类型w中,我们通常用这个函数往文件中写入内容。

func Fprint(w io.Writer, a ...interface{}) (n int, err error)
func Fprintf(w io.Writer, format string, a ...interface{}) (n int, err error)
func Fprintln(w io.Writer, a ...interface{}) (n int, err error)

例如:

// 向标准输出写入内容
fmt.Fprintln(os.Stdout, "向标准输出写入内容")
fileObj, err := os.OpenFile("./xx.txt", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
if err != nil {
	fmt.Println("打开文件出错,err:", err)
	return
}
name := "沙河小王子"
// 向打开的文件句柄中写入内容
fmt.Fprintf(fileObj, "往文件中写如信息:%s", name)

注意,只要满足io.Writer接口的类型都支持写入。