Go语言的flag库、os库、strconv库

flag库的用法

直接解析数据

根据需要传入的数据类型,直接进行数据解析。从左到右依次是:解析的命令、默认值、说明。

代码实例:

package main

import (
    "flag"
    "fmt"
)

func main() {
    wordPtr := flag.String("word", "foo", "a string")
    numbPtr := flag.Int("numb", 1024, "an int")  // 以此为例,命令行名称是numb 默认1024,说明是int
    boolPtr := flag.Bool("fork", false, "an bool")

    flag.Parse()
    fmt.Println("word:", *wordPtr)
    fmt.Println("numb:", *numbPtr)
    fmt.Println("fork", *boolPtr)
}

命令行操作输入,假设配置好了环境变量,而且是在当前目录下打开的终端,文件名称是edit.go
输入:

go run edit.go 

输出:

word: foo
numb: 1024
fork false

输入:

 go run edit.go -word="hello world" -numb=58 -fork=true

输出:

word: hello world
numb: 58
fork true

输入:

go run edit.go -h

输出:

Usage of /tmp/go-build604709361/b001/exe/edit:
  -fork
        an bool
  -numb int
        an int (default 1024)
  -word string
        a string (default "foo")
exit status 2

使用var函数绑定数据

代码:

package main

import (
    "flag"
    "fmt"
)

func main() {
    var flagvar int
    flag.IntVar(&flagvar, "flag", 1234, "an int")
    flag.Parse()
    fmt.Println(flagvar)
}

命令行操作类比上面的。。。

也可以解析自定义的数据,使用interface的方式,在这里不赘述,一般这也用不到。。。。还是第一种方式最常用。

os库

在这里主要记录创建文件的操作。。。。

func Create(name string) (*File, error) // 创建文件name文件,error类型是*PathError
func Open(name string) (*File, error) // 打开`name`文件,error类型是*PathError
func (f *File) Close() error  // 关闭文件

strconv库

实现字符串向其他数据类型转换:

func Atoi(s string) (int, error) // 字符转化成整型
func Itoa(s string) (int, error) // 整型转化成字符型

猜你喜欢

转载自blog.csdn.net/qq_35976351/article/details/81782784