代码拉取完成,页面将自动刷新
同步操作将从 林伟奇思妙想/lin 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package lin
import "sync"
type R日志 struct {
保存文件夹路径 string
保存文件名 string
读写许可 *sync.RWMutex
是否按日期创建文件 bool
}
//@保存文件夹路径 列子"D:\错误\"
//@保存文件名 列子 "错误日志"
//@是否按日期创建文件 为 true 时 例子 变成"D:\错误\错误日志2024-01-01.txt"
func (类 *R日志) C初始化(保存文件夹路径, 保存文件名 string, 是否按日期创建文件 bool) {
if !全_文本.P判断后缀(保存文件夹路径, `/`) && !全_文本.P判断后缀(保存文件夹路径, `\`) {
保存文件夹路径 = 保存文件夹路径 + `\`
}
if 全_文本.X寻找文本(保存文件名, ".txt") != -1 {
保存文件名 = 全_文本.T替换文本(保存文件名, ".txt", "", -1)
}
类.保存文件夹路径 = 保存文件夹路径
类.保存文件名 = 保存文件名
类.是否按日期创建文件 = 是否按日期创建文件
var 锁 sync.RWMutex
类.读写许可 = &锁
}
//@若有错误 返回true 否则返回 false
func (类 *R日志) X写出err日志(err error, 信息备注 ...string)bool {
if err == nil {
return false
}
错误文本 := "\r\n" + "时间:" + 全_时间.D到文本(全_时间.QX取现行_时间()) + "\r\n" + "错误:" + err.Error() + "\r\n"
for i, v := range 信息备注 {
错误文本 = 错误文本 + "备注" + 全_类型.D到文本(i+1) + ":" + v + "\r\n"
}
全路径 := 类.保存文件夹路径 + 类.保存文件名
if 类.是否按日期创建文件 {
日期 := 全_类型.D到文本(全_时间.QX取现行_时间())
日期 = 全_文本.QZ取左边(日期, " ")
全路径 = 全路径 + 日期 + ".txt"
} else {
全路径 = 全路径 + ".txt"
}
go 写日志(类.读写许可, 全路径, 错误文本)
return true
}
func (类 *R日志) X写出普通日志(日志信息 ...string) {
错误文本 := "\r\n" + "时间:" + 全_时间.D到文本(全_时间.QX取现行_时间()) + "\r\n"
for i, v := range 日志信息 {
错误文本 = 错误文本 + "信息" + 全_类型.D到文本(i+1) + ":" + v + "\r\n"
}
全路径 := 类.保存文件夹路径 + 类.保存文件名
if 类.是否按日期创建文件 {
日期 := 全_类型.D到文本(全_时间.QX取现行_时间())
日期 = 全_文本.QZ取左边(日期, " ")
全路径 = 全路径 + 日期 + ".txt"
} else {
全路径 = 全路径 + ".txt"
}
go 写日志(类.读写许可, 全路径, 错误文本)
}
func 写日志(读写许可 *sync.RWMutex, 文件全路径 string, 日志内容 string) {
读写许可.Lock()
defer 读写许可.Unlock()
全_文件.X写到_文件尾(文件全路径, []byte(日志内容))
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。