Go 语言 fmt.Sprintf (格式化输出)

 Printf()、Sprintf()、Fprintf() 函数的区别用法是什么?

  都是输出格式化字符串,只是输出到的目标不一样:

    Printf() 是把格式化字符串输出到标准到标准输出(一般是屏幕,可以重定向)

    Printf() 是和标准输出文件(stdout)关联的,Fprintf 则没有这个限制

    Sprintf() 是把格式化字符串输出到指定的字符串中,可以用一个变量来接受,然后在打印

    Fprintf() 是把格式字符串输出到指定的文件设备中,所以参数比Printf 多一个文件指针*File

主要用于文件操作,Fprintf() 是格式化输出到一个 Stream ,通常是一个文件

 

下表格出了常用的一些格式化样式中的动词及功能。

                  动词                                                  功能                              
                   %v    按值的本来值输出
      %+v    在 %v 的基础上,对结构体字段名和值进行展开       
      %#v     输出 Go 语言语法格式的值
      %T   输出 Go 语言语法格式的类型和值
      %%      输出 %% 本体
      %b     整型以二进制方式显示
      %o     整型以八进制方式显示
      %d     整型以十进制方式显示
      %x     整型以 十六进制显示
      %X     整型以十六进制、字母大写方式显示
      %U      Unicode 字符
      %f      浮点数
      %p      指针,十六进制方式显示

posted on 2020-02-10 14:42  海纳百川_有容乃大  阅读(12098)  评论(0编辑  收藏  举报

导航