Golang fmt.Fprintf()函数及示例

Golang fmt.Fprintf()函数及示例

在Golang语言中,fmt包是一个非常常用和强大的包,它提供了很多强大的函数,比如Println()、Printf()和Print()等函数。在这些函数中,我们想要把格式化的文本输出到一个字符串、文件或者客户端上。fmt.Fprintf()函数可以完成这个任务。下面我们就来看看fmt.Fprintf()函数的具体用法。

fmt.Fprintf()函数简介

fmt.Fprintf()函数的作用是根据格式标识符(format verb)将指定的值进行格式化,并写入到指定的io.Writer(w)中。这个函数的定义如下:

func Fprintf(w io.Writer, format string, a ...interface{}) (n int, err error) {
    p := newPrinter()
    defer p.free()
    p.doPrintf(format, a)
    n, err = w.Write(p.buf)
    return
}

在函数的参数中,第一个参数w io.Writer是一个接口类型,可以接受任何实现了io.Writer接口的类型,比如os.File、os.Stdout、bytes.Buffer等,第二个参数format string定义了格式标识符,最后的…interface{}参数接受一个或多个参数。

fmt.Fprintf()函数示例

我们通过几个示例来了解fmt.Fprintf()函数的使用方法。

示例1:在控制台中输出字符串

package main

import (
    "fmt"
    "os"
)

func main() {
    var s string = "hello, world!"
    fmt.Fprintf(os.Stdout, "%s", s)
}

上面的示例中,我们使用os.Stdout作为fmt.Fprintf()函数的第一个参数,这样输出的字符串就会在控制台中显示。

示例2:写入文件中

package main

import (
    "fmt"
    "os"
)

func main() {
    f, err := os.Create("test.txt")
    if err != nil {
        fmt.Println(err)
        return
    }
    var s string = "hello, world!"
    fmt.Fprintf(f, "%s", s)
    f.Close()
}

在上面的示例中,我们通过os.Create()创建了一个文件,并将文件对象f作为fmt.Fprintf()函数的第一个参数传递进去,这样字符串就会写入到文件中。

示例3:输出数字

package main

import (
    "fmt"
    "os"
)

func main() {
    var i int = 123
    fmt.Fprintf(os.Stdout, "%d", i)
}

在上面的示例中,我们使用%d格式标识符将一个整数输出到控制台中。

示例4:输出浮点型

package main

import (
    "fmt"
    "os"
)

func main() {
    var f float64 = 3.1415926
    fmt.Fprintf(os.Stdout, "%.3f", f)
}

在上面的示例中,我们使用%.3f格式标识符将一个浮点数输出到控制台中,保留小数点后三位。

结论

以上就是fmt.Fprintf()函数的在Golang中的用法,它非常的灵活,可以通过格式标识符的设置来完成不同的需求,可以通过不同的io.Writer实现不同的输出方式。希望这篇文章对你有所帮助。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程