一文帶你了解Go語言fmt標準庫輸出函數(shù)的使用
fmt 輸出函數(shù)
函數(shù) | 描述 |
---|---|
Fprint(w io.Writer, a ...any) (n int, err error) | 使用默認格式將參數(shù)寫入到 w 中,如果相鄰兩個參數(shù)都不是字符串,則在它們之前添加空格 |
Fprintf(w io.Writer, format string, a ...any) (n int, err error) | 根據(jù)格式說明符進行格式化,并寫入到 w 中 |
Fprintln(w io.Writer, a ...any) (n int, err error) | 使用默認格式將參數(shù)寫入到 w 中,參數(shù)之間添加空格和換行符 |
Print(a ...any) (n int, err error) | 打印指定參數(shù),如果相鄰兩個參數(shù)都不是字符串,打印時用空格隔開 |
Printf(format string, a ...any) (n int, err error) | 根據(jù)格式說明符進行格式化并打印 |
Println(a ...any) (n int, err error) | 打印指定參數(shù),參數(shù)之間用空格和換行符分隔 |
Sprint(a ...any) string | 將參數(shù)按照默認格式進行格式化,如果相鄰兩個參數(shù)都不是字符串則在其中間添加空格,并以字符串的結(jié)果返回 |
Sprintf(format string, a ...any) string | 根據(jù)格式說明符進行格式化并以字符串的結(jié)果返回 |
Sprintln(a ...any) string | 將參數(shù)按照默認格式進行格式化,參數(shù)之間添加空格和換行符,并以字符串的結(jié)果返回 |
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
函數(shù)先將 123
寫入到文件里;
然后通過 Fprintln
函數(shù)將 456
寫入到文件里并換行;
最后通過 Fprintf
函數(shù)將 789
格式化輸出到文件里。
程序運行后文件的內(nèi)容為:
123456
789
Print、Printf、Println
import ( "fmt" ) func main() { fmt.Print("Hello, ") fmt.Println("World!") s := "golang!" fmt.Printf("Hello, %s", s) }
首先通過 Print
函數(shù)打印 Hello,
;
然后通過 Println
函數(shù)打印 Wrold!
并換行,與上面打印的語句連起來,一行的打印內(nèi)容為 Hello, World!
;
最后通過 Printf
函數(shù),進行格式化打印。
最終的打印結(jié)果為:
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
將指定內(nèi)容轉(zhuǎn)成默認格式的字符串并用變量s1
接收,通過占位符%#v
打印出s1
的原生內(nèi)容 →"hello, world!"
; - 通過
Sprintln
將指定內(nèi)容轉(zhuǎn)成默認格式的字符串并添加換行符,用變量s2
接收,通過占位符%#v
打印出s2
的原生內(nèi)容 →"hello, gopher!\n"
; - 通過
Sprintf
將指定內(nèi)容轉(zhuǎn)成指定格式的字符串并用變量s3
接收,通過占位符%#v
打印出s3
的原生內(nèi)容 →"hello, 小明"
。 - 如果對占位符不是很了解的小伙伴,可以查看我的這篇文章 一文了解 Go fmt 標準庫的常用占位符及其簡單使用 。
小結(jié)
本篇文章對 fmt
標準庫的常用輸出函數(shù)進行了介紹。輸出函數(shù)分三類介紹,第一類是輸出到輸出流里,第二類是標準輸出,第三類是輸出到字符串里。并給出簡單的示例代碼。
到此這篇關(guān)于一文帶你了解Go語言fmt標準庫輸出函數(shù)的使用的文章就介紹到這了,更多相關(guān)Go語言fmt標準庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang多線程排序?qū)崿F(xiàn)快速高效地處理大規(guī)模數(shù)據(jù)
Golang多線程排序是一種快速高效地處理大規(guī)模數(shù)據(jù)的方法,通過使用Golang的協(xié)程和通道,可以將排序任務(wù)分配到多個線程中并行處理,提高了排序的效率和速度,需要詳細了解可以參考下文2023-05-05使用Golang?Validator包實現(xiàn)數(shù)據(jù)驗證詳解
在開發(fā)過程中,數(shù)據(jù)驗證是一個非常重要的環(huán)節(jié),而golang中的Validator包是一個非常常用和強大的數(shù)據(jù)驗證工具,提供了簡單易用的API和豐富的驗證規(guī)則,下面我們就來看看Validator包的具體使用吧2023-12-12Golang中由零值和gob庫特性引起B(yǎng)UG解析
這篇文章主要為大家介紹了Golang中由零值和gob庫特性引起B(yǎng)UG解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04解決goland 導(dǎo)入項目后import里的包報紅問題
這篇文章主要介紹了解決goland 導(dǎo)入項目后import里的包報紅問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-05-05golang接口實現(xiàn)調(diào)用修改(值接收者指針接收者)場景詳解
這篇文章主要為大家介紹了golang接口實現(xiàn)調(diào)用修改值接收者指針接收者示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08