Go语言中文网 为您找到相关结果 31

Golang日志--Seelog的简单用法

Beego自带的log包虽然功能比较完善,但是在日志中会带上日志级别的时间戳,而且这个时间戳还删除不了。 因为项目需要,所以研究了下Golang中其他的日志包,发现seelog正好能满足俺们项目的需要,因此在这做简单介绍。 seelog的地址:"github.com/cihub/seelog" seelog功能强大,在此简单介绍将日志配置保存在xml文件中,并从文件中获取配置,然后使用的流程。 在controllers包的某个文件中: mainlog, _ = seelog.LoggerFromConfigAsFile("conf/seelog-main.xml")LoggerFromConfigAsFile会从后面的文件中获取日志配置,如上则是从conf包的seelog-main.xml文...阅读全文

博文 2015-06-17 20:03:42 stevefang

golang从stdin中读取一行

本文转自life的leanote博客: http://leanote.com/blog/view/531706971a91084358000000 fmt.Scanln()不是读取一行, 而是遇到换行就停止, Scanln is similar to Scan, but stops scanning at a newline and after the final item there must be a newline or EOF. 举个例子: var i, j, k int fmt.Scanln(&i, &j, &k) fmt.Println(i, j, k) 输入1, 2 回车后程序结束. 如果换成fmt.Scan()还会让输入的. 使用stdin与reader联合起来读一行数据: ...阅读全文

博文 2014-10-04 19:26:59 lifephp

go 读取文件, 最后有没有换行符

package main import ( "fmt" "bufio" "os" "strings" // "encoding/json" ) func main(){ file, err := os.Open("u8_menu_872") defer func() { err := file.Close() if err != nil { //_ = log.Error(err) fmt.Println(err) } }() if err != nil { panic(err) } buff := bufio.NewReader(file) // 读入缓冲区 // cnt := 0 for { str, err := buff.ReadString('\n') //fmt.Println(...阅读全文

博文 2015-11-28 13:00:00 woquNOKIA

golang Unmarshal 小问题

正常情况: func main() { str := `{"expires_in":2592000,"refresh_token":"22.84564433384c3dffdf8c2b123b6da8de.315360000.1756090115.2605827041-6701125","access_token":"21.060aaae1049e2604d0fa71d992aea516.2592000.1443322115.2605827041-6701125","session_secret":"6ce3910403a953006916f1fafef433c5","session_key":"9mnRdL3CfpvaeMqn4g2A4f1b+olbN4iD079GhsDIumsoSy9A...阅读全文

博文 2015-08-28 12:00:02 北京_

go语言运行shell命令

// go语言运行shell命令 package main import ( "os/exec" "fmt" "os" "strings" ) func main() { var ip, whoami []byte var err error var cmd *exec.Cmd // 执行单个shell命令时, 直接运行即可 cmd = exec.Command("whoami") if whoami, err = cmd.Output(); err != nil { fmt.Println(err) os.Exit(1) } // 默认输出有一个换行 fmt.Println(string(whoami)) // 指定参数后过滤换行符 fmt.Println(strings.Trim(str...阅读全文

博文 2017-06-07 12:05:55 广训

go语言之Cmd.start, Cmd.Wait

package main import ( "fmt" "log" "os/exec" "encoding/json" ) func main() { cmd := exec.Command("echo", "-n", `{"Name": "Bob", "Age": 32}`) stdout, err := cmd.StdoutPipe() if err != nil { log.Fatal(err) } if err := cmd.Start(); err != nil { log.Fatal(err) } var person struct { Name string Age int } if err := json.NewDecoder(stdout).Decode(&person);...阅读全文

博文 2015-06-17 23:07:38 zistxym

golang printf

1: 打印包括字段在内的实例的完整信息 同 %+V fmt.Printf("Hello world! %v","hufeng") 输出:Hello world! hufeng 2:打印包括字段和限定类型名称在内的实例的完整信息 fmt.Printf("Hello world! %#v","hufeng") Hello world! "hufeng" 3:打印某个类型的完整说明 fmt.Printf("Hello world! %T","hufeng") Hello world! string 4: fmt.Printf("Hello world! %t",false); Hello world! false 5: fmt.Printf("Hello world! %%"); Hello wo...阅读全文

博文 2014-10-04 19:26:00 dyllove98

go 语言基础

因为最近项目的关系,基本都是用Go语言编写的,刚刚把它的基础部分看了一遍,突然发现无可救药地爱上了go语言,决定从今天开始把go书再重新过一遍,顺便将看到的东西写一遍出来加深自己的印象。 1.定义变量 var a type //type为变量类型 var a,b,c type var a type = value var a = value //这个以及上面的这两种方法皆可 go语言可以根据变量的类型自动推倒出变量的类型 var a int = 1 var a = []int {1,2,3,4} //定义切片 var b []int = []int {1,2,3,4,5} //定义切片 a := 1 // go语言提供的最简便的一种方法 := 可以省略关键字var 2.定义常量 const ...阅读全文

博文 2015-06-30 18:00:00 timond

GO语言圣经报个BUG

多年C、C++开发者,刚学GO 二天,目前对着GO语言圣经练习。 https://docs.ruanjiadeng.com/gopl-zh/ch1/ch1-03.html 发现示例程序dup3和dup2的执行结果不一致, 当输入的文件最后一行不是一个换行时。 gopl.io/ch1/dup3 ```go package main import ( "fmt" "io/ioutil" "os" "strings" ) func main() { counts := make(map[string]int) for _, filename := range os.Args[1:] { da...阅读全文

看到有朋友模拟tail命令,但是写得太冗余

自己刚学,写一个go处女秀(大神们指教)
有些容错没有做好
要怎么编辑格式,代码复制进来没有换行