golang 日志文件设置

本文介绍了一个使用Golang实现的日志文件创建方法,通过获取当前执行文件的路径来确定日志文件的位置。文章详细展示了如何利用标准库如os、exec、path/filepath等进行文件操作和路径解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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"//2019-06-13 14_56_13.txt

    //filepath := "./log_" + strings.Replace(t.String()[:10], ":""_", 3) + ".log"//2019-06-13.log
 

    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()

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值