golang在当前执行目录创建日志文件

package main

import (
    "bufio"
    "log"
    "os"
    "os/exec"
    "path/filepath"
    "strings"
    "time"
)

/*获取当前文件执行的路径*/
func GetCurrPath() string {
    file, _ := exec.LookPath(os.Args[0])
    path, _ := filepath.Abs(file)
    splitstring := strings.Split(path, "\\")
    size := len(splitstring)
    splitstring = strings.Split(path, splitstring[size-1])
    ret := strings.Replace(splitstring[0], "\\", "/", size-1)
    return ret
}

func main() {
    //创建日志文件
    t := time.Now()
    filepath := "./log_" + strings.Replace(t.String()[:19], ":", "_", 3) + ".txt"
    file, err := os.OpenFile(filepath, os.O_CREATE, 0666)
    if err != nil {
        log.Fatal("create log file failed!")
    }
    defer file.Close()
    wFile := bufio.NewWriter(file)
    //获取当前程序执行的绝对路径
    wFile.WriteString(GetCurrPath()) 
    wFile.Flush()
}


本文来自:开源中国博客

感谢作者:xlplbo

查看原文:golang在当前执行目录创建日志文件

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。