一文帶你了解Go語(yǔ)言fmt標(biāo)準(zhǔn)庫(kù)輸出函數(shù)的使用
fmt 輸出函數(shù)
| 函數(shù) | 描述 |
|---|---|
| Fprint(w io.Writer, a ...any) (n int, err error) | 使用默認(rèn)格式將參數(shù)寫(xiě)入到 w 中,如果相鄰兩個(gè)參數(shù)都不是字符串,則在它們之前添加空格 |
| Fprintf(w io.Writer, format string, a ...any) (n int, err error) | 根據(jù)格式說(shuō)明符進(jìn)行格式化,并寫(xiě)入到 w 中 |
| Fprintln(w io.Writer, a ...any) (n int, err error) | 使用默認(rèn)格式將參數(shù)寫(xiě)入到 w 中,參數(shù)之間添加空格和換行符 |
| Print(a ...any) (n int, err error) | 打印指定參數(shù),如果相鄰兩個(gè)參數(shù)都不是字符串,打印時(shí)用空格隔開(kāi) |
| Printf(format string, a ...any) (n int, err error) | 根據(jù)格式說(shuō)明符進(jìn)行格式化并打印 |
| Println(a ...any) (n int, err error) | 打印指定參數(shù),參數(shù)之間用空格和換行符分隔 |
| Sprint(a ...any) string | 將參數(shù)按照默認(rèn)格式進(jìn)行格式化,如果相鄰兩個(gè)參數(shù)都不是字符串則在其中間添加空格,并以字符串的結(jié)果返回 |
| Sprintf(format string, a ...any) string | 根據(jù)格式說(shuō)明符進(jìn)行格式化并以字符串的結(jié)果返回 |
| Sprintln(a ...any) string | 將參數(shù)按照默認(rèn)格式進(jìn)行格式化,參數(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)
}打開(kāi) test.txt 文件,通過(guò) Fprint 函數(shù)先將 123 寫(xiě)入到文件里;
然后通過(guò) Fprintln 函數(shù)將 456 寫(xiě)入到文件里并換行;
最后通過(guò) Fprintf 函數(shù)將 789 格式化輸出到文件里。
程序運(yùn)行后文件的內(nèi)容為:
123456
789
Print、Printf、Println
import (
"fmt"
)
func main() {
fmt.Print("Hello, ")
fmt.Println("World!")
s := "golang!"
fmt.Printf("Hello, %s", s)
}首先通過(guò) Print 函數(shù)打印 Hello, ;
然后通過(guò) Println 函數(shù)打印 Wrold! 并換行,與上面打印的語(yǔ)句連起來(lái),一行的打印內(nèi)容為 Hello, World!;
最后通過(guò) Printf 函數(shù),進(jìn)行格式化打印。
最終的打印結(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)
}- 通過(guò)
Sprint將指定內(nèi)容轉(zhuǎn)成默認(rèn)格式的字符串并用變量s1接收,通過(guò)占位符%#v打印出s1的原生內(nèi)容 →"hello, world!"; - 通過(guò)
Sprintln將指定內(nèi)容轉(zhuǎn)成默認(rèn)格式的字符串并添加換行符,用變量s2接收,通過(guò)占位符%#v打印出s2的原生內(nèi)容 →"hello, gopher!\n"; - 通過(guò)
Sprintf將指定內(nèi)容轉(zhuǎn)成指定格式的字符串并用變量s3接收,通過(guò)占位符%#v打印出s3的原生內(nèi)容 →"hello, 小明"。 - 如果對(duì)占位符不是很了解的小伙伴,可以查看我的這篇文章 一文了解 Go fmt 標(biāo)準(zhǔn)庫(kù)的常用占位符及其簡(jiǎn)單使用 。
小結(jié)
本篇文章對(duì) fmt 標(biāo)準(zhǔn)庫(kù)的常用輸出函數(shù)進(jìn)行了介紹。輸出函數(shù)分三類介紹,第一類是輸出到輸出流里,第二類是標(biāo)準(zhǔn)輸出,第三類是輸出到字符串里。并給出簡(jiǎn)單的示例代碼。
到此這篇關(guān)于一文帶你了解Go語(yǔ)言fmt標(biāo)準(zhǔn)庫(kù)輸出函數(shù)的使用的文章就介紹到這了,更多相關(guān)Go語(yǔ)言fmt標(biāo)準(zhǔn)庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang多次讀取http request body的問(wèn)題分析
這篇文章主要給大家分析了golang多次讀取http request body的問(wèn)題,文中通過(guò)代碼示例和圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-01-01
Golang通道阻塞情況與通道無(wú)阻塞實(shí)現(xiàn)小結(jié)
本文主要介紹了Golang通道阻塞情況與通道無(wú)阻塞實(shí)現(xiàn)小結(jié),詳細(xì)解析了通道的類型、操作方法以及垃圾回收機(jī)制,從基礎(chǔ)概念到高級(jí)應(yīng)用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03
GO實(shí)現(xiàn)基于命令行的簡(jiǎn)單IPS程序代碼
本文介紹了入侵防御系統(tǒng)IPS的工作原理和實(shí)現(xiàn),IPS通過(guò)網(wǎng)絡(luò)流量監(jiān)控和實(shí)時(shí)響應(yīng),防止網(wǎng)絡(luò)攻擊,通過(guò)使用Go語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)單的IPS示例程序,展示了如何獲取本地IP地址和探測(cè)網(wǎng)絡(luò)中其他設(shè)備的IP地址,包括如何定義和加載規(guī)則文件,以及如何檢測(cè)IP對(duì)相應(yīng)端口的訪問(wèn)是否達(dá)到規(guī)定閾值2024-12-12
Golang?依賴注入經(jīng)典解決方案uber/fx理論解析
這篇文章主要為大家介紹了Golang依賴注入經(jīng)典解決方案uber/fx理論解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
Go語(yǔ)言基礎(chǔ)模板設(shè)計(jì)模式示例詳解
這篇文章主要為大家介紹了Go語(yǔ)言基礎(chǔ)設(shè)計(jì)模式之模板模式的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11

