接下來的單元,我會分為幾天,來介紹幾個常用的標準函式庫的使用方式,讓大家能很快地進入 golang 的世界

strings

字串的處理,我想應該是基礎中的基礎,任何語言寫任何服務都可以用得。接下來看範例中,我蠻常用到的幾個 case

package main

import (
	"fmt"
	"strings"
)

func main() {
	//字串轉換大小寫
	//https://golang.org/pkg/strings/#ToLower
	//https://golang.org/pkg/strings/#ToUpper
	
	upperString := "HELLO WORLD"
	lowerString := "hello world"
	fmt.Println("ToUpper:", strings.ToUpper(lowerString))
	fmt.Println("ToLower:", strings.ToLower(upperString))
	
	
	//字串切割,可以指定特定分隔符號轉換成 array
	//https://golang.org/pkg/strings/#Split
	splitString:="a,b,c,d,e,f"
	fmt.Println("Split:",strings.Split(splitString,","))
	
	//字串陣列 依照特定分隔符,合併成一個字串
	//https://golang.org/pkg/strings/#Join
	joinArray:=[]string{a,b,c,d,e,f}
	fmt.Println("Join:",strings.Join(joinArray,","))
}

https://play.golang.org/p/EbfyQ0ZwxpV

strconv

字串數字的轉換,我相信也是必備的工具之一

package main

import (
	"fmt"
	"strconv"
)

func main() {
	var int1 int
	var string1 string
	int1 = 5
	string1 = "5"

	//字串轉數字
	ii, err := strconv.Atoi(string1)
	if err != nil {
		fmt.Println(err)
		return
	}
	fmt.Println("to int :& add one", ii+1)

	//數字轉字串
	fmt.Println("to string :", strconv.Itoa(int1))

}

https://play.golang.org/p/rajvN8tn43Q

io/iotuil

讀檔功能,我想也是大家不陌生的功能,在這邊說明一下,ioutil 是 golang 包裝過後的簡易工具,所以基本上不需要處理「資源釋放』Close 的相關問題,它內部已經處理完了,如果是運用 golang 其他 stdlib 來讀檔,就要注意 Close 的相關問題

package main

import (
	"fmt"
	"io/ioutil"
	"log"
)

func main() {
	content, err := ioutil.ReadFile("testdata/hello")
	if err != nil {
		log.Fatal(err)
	}

	fmt.Printf("File body: %s", content)

}

https://play.golang.org/p/Wi38ezXBeX8