6

一文了解 Go fmt 标准库输出函数的使用

 1 year ago
source link: https://blog.51cto.com/chenmingyong/5981282
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

一文了解 Go fmt 标准库输出函数的使用

精选 原创

CMY陈明勇 2022-12-30 23:30:13 博主文章分类:Go 基础 ©著作权

文章标签 Go golang fmt 输出 文章分类 Go语言 编程语言 yyds干货盘点 阅读数207

耐心和持久胜过激烈和狂热。

哈喽大家好,我是陈明勇,今天分享的内容是 Go fmt 标准库输出函数的使用。如果本文对你有帮助,不妨点个赞,如果你是 Go 语言初学者,不妨点个关注,一起成长一起进步,如果本文有错误的地方,欢迎指出!

fmt 输出函数

Fprint(w io.Writer, a ...any) (n int, err error)

使用默认格式将参数写入到 w 中,如果相邻两个参数都不是字符串,则在它们之前添加空格

Fprintf(w io.Writer, format string, a ...any) (n int, err error)

根据格式说明符进行格式化,并写入到 w 中

Fprintln(w io.Writer, a ...any) (n int, err error)

使用默认格式将参数写入到 w 中,参数之间添加空格和换行符

Print(a ...any) (n int, err error)

打印指定参数,如果相邻两个参数都不是字符串,打印时用空格隔开

Printf(format string, a ...any) (n int, err error)

根据格式说明符进行格式化并打印

Println(a ...any) (n int, err error)

打印指定参数,参数之间用空格和换行符分隔

Sprint(a ...any) string

将参数按照默认格式进行格式化,如果相邻两个参数都不是字符串则在其中间添加空格,并以字符串的结果返回

Sprintf(format string, a ...any) string

根据格式说明符进行格式化并以字符串的结果返回

Sprintln(a ...any) string

将参数按照默认格式进行格式化,参数之间添加空格和换行符,并以字符串的结果返回

Fprint、Fprintf、Fprintln

import (
"fmt"
"os"
)

func main() {
file, err := os.OpenFile("./test.txt", os.O_WRONLY, 0666)
if err != nil {
return
}
defer file.Close()

fmt.Fprint(file, "123")
fmt.Fprintln(file, "456")
fmt.Fprintf(file, "%d", 789)
}
  • 打开 ​​test.txt​​ 文件,通过 ​​Fprint​​ 函数先将 ​​123​​ 写入到文件里;
  • 然后通过 ​​Fprintln​​ 函数将 ​​456​​ 写入到文件里并换行;
  • 最后通过 ​​Fprintf​​ 函数将 ​​789​​ 格式化输出到文件里。
  • 程序运行后文件的内容为:

Print、Printf、Println

import (
"fmt"
)

func main() {
fmt.Print("Hello, ")
fmt.Println("World!")
s := "golang!"
fmt.Printf("Hello, %s", s)
}
  • 首先通过 ​​Print​​ 函数打印 ​​Hello, ​​;
  • 然后通过 ​​Println​​ 函数打印 ​​Wrold!​​ 并换行,与上面打印的语句连起来,一行的打印内容为 ​​Hello, World!​​;
  • 最后通过 ​​Printf​​ 函数,进行格式化打印。
  • 最终的打印结果为:
Hello, World!
Hello, golang!

Sprint、Sprintf、Sprintln

import (
"fmt"
)

func main() {
s1 := fmt.Sprint("hello, world!")
fmt.Printf("%#v\n", s1)
s2 := fmt.Sprintln("hello, gopher!")
fmt.Printf("%#v\n", s2)
name := "小明"
s3 := fmt.Sprintf("hello, %s", name)
fmt.Printf("%#v\n", s3)
}
  • 通过 ​​Sprint​​ 将指定内容转成默认格式的字符串并用变量 ​​s1​​ 接收,通过占位符 ​​%#v​​ 打印出 ​​s1​​ 的原生内容 → ​​"hello, world!"​​;
  • 通过 ​​Sprintln​​ 将指定内容转成默认格式的字符串并添加换行符,用变量 ​​s2​​ 接收,通过占位符 ​​%#v​​ 打印出 ​​s2​​ 的原生内容 → ​​"hello, gopher!\n"​​;
  • 通过 ​​Sprintf​​ 将指定内容转成指定格式的字符串并用变量 ​​s3​​ 接收,通过占位符 ​​%#v​​ 打印出 ​​s3​​ 的原生内容 → ​​"hello, 小明"​​。
  • 如果对占位符不是很了解的小伙伴,可以查看我的这篇文章 ​ ​一文了解 Go fmt 标准库的常用占位符及其简单使用
    ​。

本篇文章对 fmt 标准库的常用输出函数进行了介绍。输出函数分三类介绍,第一类是输出到输出流里,第二类是标准输出,第三类是输出到字符串里。并给出简单的示例代码。

  • 1
  • 1收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK