内容简介:fmt 方法可以大致分为Print 方法的几种模式模式可组合, 例如
基本模式
fmt 方法可以大致分为 print
, scan
两类, 根据基础方法可以构建特定方法。
Print scan
Print 方法的几种模式
Fprint Sprint Printf Println
模式可组合, 例如 Fprintf
, Sprintf
默认格式化,返回字符串
func Print(a ...interface{}) (n int, err error)
fmt.Print("name", 23, []byte("show me"))
// -> name23 [115 104 111 119 32 109 101]
Printf 模板模式
根据模板使用默认格式输出
func Printf(format string, a ...interface{}) ( str string, err error)
str, _ := fmt.Printf("name: %s", "coco")
// str -> "name: coco"
Fprint 写入模式
将数据写入 io.Writer
func Fprint(w io.Writer, a ...interface{}) (n int, err error)
file, _ := os.OpenFile("./target.js", os.O_RDWR, os.ModeAppend)
n, err := fmt.Fprint(file, "name", 24)
// n, err -> 6, nil
Sprint 字符模式
func Sprint(a ...interface{}) string
str := fmt.Sprint("name: %s", "coco")
// -> name: coco
Scan
-
Scan 方法的几种模式, 所有方法都返回 写入
字节数(n)及错误(err) - 基础模式: [name] Scan 将输入值写入参数中
-
读取模式: F[name] 从io.Reader 读取数据 例如:
Fscan -
字符模式: S[name] 从字符串读取数据 例如:
Sscan -
模板模式: [name]f 根据模板提取数据 例如:
scanf -
换行模式: [name]ln 以换行符号做读取结束 例如:
scanln
Scan
根据标准输入,提取数据
func Scan(a ...interface{}) (n int, err error)
var name string
var age int
// 这里参数需要传入指针类型,获取写入数据
if _, err := fmt.Scan(&name, &age); err != nil{
fmt.Println(err)
return
}
fmt.Printf("name: $s, age: %d", name, age)
// 终端输入 coco 24
// 终端输出 name: coco, age: 24
// 当出入参数数量达到时,跳出输入
从io.Reader读取数据,并解析
func Fscan(r io.Reader, a ...interface{}) (n int, err error)
// target.js
let name = "coco"
// main.go
var t string
var n string
file, _ := os.Open("./target.js")
fmt.Fscan(file, &t, &n)
// t, n -> let 0
// 以空格作为分割, 当数据不符合类型定义时,返回该类型的默认值
根据指定格式,提取标准输入数据
func Scanf(format string, a ...interface{}) (n int, err error)
var name string
var age int
fmt.Scanf("name: %s\nage: %d", &name, &age)
fmt.Println(name,'\n', age)
/*
终端输入:
name: coco
age: 24
*/
/*
终端输出:
coco
24
*/
// 当输入不符合指定格式时,将返回错误,跳出输入
以换行符结束输入
func Scanln(a ...interface{}) (n int, err error)
var name string
var age int
fmt.Scanln(&name, &age)
/*
终端输入:
coco 24
[换行, 结束输入]
*/
// name, age -> coco 24
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- GO获取api 接口json格式数据代码
- Java 如何设计 API 接口,实现统一格式返回?
- 分布式之API接口返回格式如何优雅设计?
- TCP数据段格式+UDP数据段格式详解
- 解决从旧格式的 csproj 迁移到新格式的 csproj 格式 AssemblyInfo 文件值重复问题
- CSS——CSS 基本视觉格式化:① “块盒子”格式化
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
How to Solve It
Zbigniew Michalewicz、David B. Fogel / Springer / 2004-03-01 / USD 59.95
This book is the only source that provides comprehensive, current, and detailed information on problem solving using modern heuristics. It covers classic methods of optimization, including dynamic pro......一起来看看 《How to Solve It》 这本书的介绍吧!