【转】 Golang输入输出格式化Printf Springf Fprintf..
// Go 在传统的`printf` 中对字符串格式化提供了优异的支持。
// 这里是一些基本的字符串格式化的人物的例子。 package main import "fmt"
import "os" type point struct {
x, y int
} func main() { // Go 为常规 Go 值的格式化设计提供了多种打印方式。例
// 如,这里打印了 `point` 结构体的一个实例。
p := point{1, 2}
fmt.Printf("%v\n", p) // 如果值是一个结构体,`%+v` 的格式化输出内容将包括
// 结构体的字段名。
fmt.Printf("%+v\n", p) // `%#v` 形式则输出这个值的 Go 语法表示。例如,值的
// 运行源代码片段。
fmt.Printf("%#v\n", p) // 需要打印值的类型,使用 `%T`。
fmt.Printf("%T\n", p) // 格式化布尔值是简单的。
fmt.Printf("%t\n", true) // 格式化整形数有多种方式,使用 `%d`进行标准的十进
// 制格式化。
fmt.Printf("%d\n", 123) // 这个输出二进制表示形式。
fmt.Printf("%b\n", 14) // 这个输出给定整数的对应字符。
fmt.Printf("%c\n", 33) // `%x` 提供十六进制编码。
fmt.Printf("%x\n", 456) // 对于浮点型同样有很多的格式化选项。使用 `%f` 进
// 行最基本的十进制格式化。
fmt.Printf("%f\n", 78.9) // `%e` 和 `%E` 将浮点型格式化为(稍微有一点不
// 同的)科学技科学记数法表示形式。
fmt.Printf("%e\n", 123400000.0)
fmt.Printf("%E\n", 123400000.0) // 使用 `%s` 进行基本的字符串输出。
fmt.Printf("%s\n", "\"string\"") // 像 Go 源代码中那样带有双引号的输出,使用 `%q`。
fmt.Printf("%q\n", "\"string\"") // 和上面的整形数一样,`%x` 输出使用 base-16 编码的字
// 符串,每个字节使用 2 个字符表示。
fmt.Printf("%x\n", "hex this") // 要输出一个指针的值,使用 `%p`。
fmt.Printf("%p\n", &p) // 当输出数字的时候,你将经常想要控制输出结果的宽度和
// 精度,可以使用在 `%` 后面使用数字来控制输出宽度。
// 默认结果使用右对齐并且通过空格来填充空白部分。
fmt.Printf("|%6d|%6d|\n", 12, 345) // 你也可以指定浮点型的输出宽度,同时也可以通过 宽度.
// 精度 的语法来指定输出的精度。
fmt.Printf("|%6.2f|%6.2f|\n", 1.2, 3.45) // 要最对齐,使用 `-` 标志。
fmt.Printf("|%-6.2f|%-6.2f|\n", 1.2, 3.45) // 你也许也想控制字符串输出时的宽度,特别是要确保他们在
// 类表格输出时的对齐。这是基本的右对齐宽度表示。
fmt.Printf("|%6s|%6s|\n", "foo", "b") // 要左对齐,和数字一样,使用 `-` 标志。
fmt.Printf("|%-6s|%-6s|\n", "foo", "b") // 到目前为止,我们已经看过 `Printf`了,它通过 `os.Stdout`
// 输出格式化的字符串。`Sprintf` 则格式化并返回一个字
// 符串而不带任何输出。
s := fmt.Sprintf("a %s", "string")
fmt.Println(s) // 你可以使用 `Fprintf` 来格式化并输出到 `io.Writers`
// 而不是 `os.Stdout`。
fmt.Fprintf(os.Stderr, "an %s\n", "error")
}
Reference:
https://gobyexample.com/string-formatting Go by Example: String Formatting
https://play.golang.org/p/1-9cY_Q5eM
【转】 Golang输入输出格式化Printf Springf Fprintf..的更多相关文章
- Go输入输出格式化Printf
package main import ( "fmt" "os" ) type point struct { x, y int } func main() { ...
- Golang的格式化输出fmt.Printf
本文来源:Go by example. Golang的格式化输出 和 C语言的标准输出基本一样,但是增加了一些针对Golang语言的特有数据结构的格式化输出方式. 一下就是实例: package ma ...
- scanf printf sprintf fprintf
都是C语言中的函数,但C++保留了这些函数,在头文件iostream中声明了. 1 scanf(格式控制,输出列表) printf (格式控制,输出列表) 举例: #include <iostr ...
- printf,sprintf,fprintf的区别与联系
在写代码过程中总会遇到printf和sprintf,既然这两个都遇到了,那么不妨再加一个fprintf吧. 他们三个都是将格式化字符串输出,区别就是他们输出的目标不一样. (1).printf,是把格 ...
- golang之格式化fmt.Printf
当使用fmt包打印一个数值时,我们可以用%d.%o或%x参数控制输出的进制格式,就像下面的例子: o := 0666 fmt.Printf("%d %[1]o %#[1]o\n", ...
- C 格式化的输入输出(printf scanf)
- 左对齐 (默认右对齐) printf("%-9d\n",123); 123 printf("%9d\n",123); 123 printf ...
- Linux下printf、fprintf、sprintf的区别
(1)fprintf() int fprintf( FILE *stream, const char *format, ... ); 用于文件操作,根据指定的format(格式)发送信息(参数)到 ...
- PHP字符串函数之 sscanf echo print sprintf vsprintf printf vprintf fprintf vfprintf
sscanf – 根据指定格式解析输入的字符 echo – 输出一个或多个字符串 print – 输出字符串 sprintf – 返回格式化字符串 vsprintf – 返回格式化字符串 (参数为数组 ...
- printf、fprintf、sprintf和snprintf 区别
都是把格式好的字符串输出,只是输出的目标不一样: 1 printf,是把格式字符串输出到标准输出(一般是屏幕,可以重定向). 2 sprintf,是把格式字符串输出到指定字符串中,所以参数比print ...
随机推荐
- Leetcode:0002(两数之和)
LeetCode:0002(两数之和) 题目描述:给定两个非空链表来表示两个非负整数.位数按照逆序方式存储,它们的每个节点只存储单个数字.将两数相加返回一个新的链表.你可以假设除了数字 0 之外,这两 ...
- Difference between BeanFactory and FactoryBean in Spring Framework (Spring BeanFactory与Factory区别)
参见原文:http://www.geekabyte.io/2014/11/difference-between-beanfactory-and.html geekAbyte Codes and Ran ...
- Settings-Sync插件源码阅读
一.介绍 请参考官网: https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync 二.源码目录详解 Ima ...
- 断路器(Curcuit Breaker)模式
在分布式环境下,特别是微服务结构的分布式系统中, 一个软件系统调用另外一个远程系统是非常普遍的.这种远程调用的被调用方可能是另外一个进程,或者是跨网路的另外一台主机, 这种远程的调用和进程的内部调用最 ...
- oracle表空间不足,ORA-00604的解决方法
参考文章: http://blog.chinaunix.net/uid-26446098-id-3344813.html 错误信息如下: 从错误的角度可以推出:应该是表空间不足 根据查看表空间的使用情 ...
- 从HelloWorld开始学习.NET Core
1.首先创建一个项目文件夹,如E:\CoreProjects 使用cmd命令进入到新建的文件夹中 2.创建一个HelloWorld项目 命令:dotnet new console -o hellowo ...
- Python-递归初识-50
#递归函数 # 了解什么是递归 : 在函数中调用自身函数 # 最大递归深度默认是997/998 —— 是python从内存角度出发做得限制 # 能看懂递归 # 能知道递归的应用场景 # 初识递归 —— ...
- H5 68-伪元素选择器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- (第十三周)Final阶段成员贡献分
项目名:食物链教学工具 组名:奋斗吧兄弟 组长:黄兴 组员:李俞寰.杜桥.栾骄阳.王东涵 个人贡献分=基础分+表现分 基础分=5*5*0.5/5=2.5 成员得分如下: 成员 基础分 表现分 个人贡献 ...
- vue学习笔记总结----思维导图