golang中的標準庫fmt

2022-09-19 05:15:11 字數 2601 閱讀 2460

fmt.fprintln(os.stdout, "向標準輸出寫入內容")

// 0644: 擁有者6讀寫許可權,組使用者4讀許可權,其它使用者4讀許可權

if err != nil

name := "枯藤"

fmt.fprintf(fileobj, "在檔案中寫入資訊:%s\n", name)

注意:只要滿足io.writer介面的型別都支援寫入

func main()
errorf函式根據format引數生成格式化字串並返回乙個包含該字串的錯誤。通常使用這種方式來自定義錯誤型別,例如:

func main()
*printf系列函式都支援format格式化引數,在這裡我們按照佔位符將被替換的變數型別劃分,方便查詢和記憶。

通用佔位符

佔位符說明

%v值的預設格式表示

%+v類似%v,但輸出結構體時會新增欄位名

%#v值的go語法表示

%t列印值的型別

%%百分號

示例**如下:

func main() 

fmt.printf("%v\n", o)

fmt.printf("%+v\n", o)

fmt.printf("%#v\n", o)

fmt.printf("100%%\n")

/* struct

100%

*/}

布林型

佔位符說明

%ttrue或false

整型佔位符

說明%b

表示為二進位制

%c該值對應的unicode碼值

%d表示為十進位制

%o表示為八進位制

%x表示為十六進製制,使用a-f

%x表示為十六進製制,使用a-f

%u表示為unicode格式:u+1234,等價於」u+%04x」

%q該值對應的單引號括起來的go語法字元字面值,必要時會採用安全的轉義表示

浮點數與複數

佔位符說明

%b無小數部分、二進位制指數的科學計數法,如-123456p-78

%e科學計數法,如-1234.456e+78

%e科學計數法,如-1234.456e+78

%f有小數部分但無指數部分,如123.456

%f等價於%f

%g根據實際情況採用%e或%f格式(以獲得更簡潔、準確的輸出)

%g根據實際情況採用%e或%f格式(以獲得更簡潔、準確的輸出)

字串或byte

佔位符說明

%s直接輸出字串或者byte

%q該值對應的雙引號括起來的go語法字串字面值,必要時會採用安全的轉義表示

%x每個位元組用兩字元十六進製制數表示(使用a-f

%x每個位元組用兩字元十六進製制數表示(使用a-f)

指標佔位符

說明%p

表示為十六進製制,並加上前導的0x

寬度識別符號

寬度通過乙個緊跟在百分號後面的十進位制數指定,如果未指定寬度,則表示值時除必需之外不作填充。精度通過(可選的)寬度後跟點號後跟的十進位制數指定。如果未指定精度,會使用預設精度;如果點號後沒有跟數字,表示精度為0。舉例如下

佔位符說明

%f預設寬度,預設精度

%9f寬度9,預設精度

%.2f

預設寬度,精度2

%9.2f

寬度9,精度2

%9.f

寬度9,精度0

其它flag

佔位符說明

』+』總是輸出數值的正負號;對%q(%+q)會生成全部是ascii字元的輸出(通過轉義);

』 『對數值,正數前加空格而負數前加負號;對字串採用%x或%x時(% x或% x)會給各列印的位元組之間加空格

』-』在輸出右邊填充空白而不是預設的左邊(即從預設的右對齊切換為左對齊);

』#』八進位制數前加0(%#o),十六進製制數前加0x(%#x)或0x(%#x),指標去掉前面的0x(%#p)對%q(%#q),對%u(%#u)會輸出空格和單引號括起來的go字面值;

『0』使用0而不是空格填充,對於數值型別會把填充的0放在正負號後面;

go語言fmt包下有fmt.scan、fmt.scanf、fmt.scanln三個函式,可以在程式執行過程中從標準輸入獲取使用者的輸入。

func main() 

func main()

有時候我們想完整獲取輸入的內容,而輸入的內容可能包含空格,這種情況下可以使用bufio包來實現。示例**如下:

func main() 

func bufiodemo()

這幾個函式功能分別類似於fmt.scan、fmt.scanf、fmt.scanln三個函式,只不過它們不是從標準輸入中讀取資料而是從io.reader中讀取資料。

func main()
這幾個函式功能分別類似於fmt.scan、fmt.scanf、fmt.scanln三個函式,只不過它們不是從標準輸入中讀取資料而是從指定字串中讀取資料。

func main()

golang中fmt的 佔位符 使用

golang 的fmt 包實現了格式化i o函式,類似於c的 printf 和 scanf。定義示例型別和變數type humanstructvar people human 普通佔位符佔位符說明舉例輸出 v 相應值的預設格式。printf v people v 列印結構體時,會新增欄位名print...

golang中fmt的 佔位符 使用

golang 的fmt 包實現了格式化i o函式,類似於c的 printf 和 scanf。定義示例型別和變數type humanstructvar people human 普通佔位符佔位符說明舉例輸出 v 相應值的預設格式。printf v people v 列印結構體時,會新增欄位名print...

golang中的標準庫http

go語言內建的net http包十分的優秀,提供了http客戶端和服務端的實現。基本的http https請求 get head post和postform函式發出http https請求。url.values,id 程式在使用完response後必須關閉回覆的主體。使用net http包編寫乙個簡...