# README
utils

此模块不再更新,部分功能分拆至 sliceutil、localeutil 和 source 三个模块中
utils 包提供了一些常用的 Go 函数
- MD5 生成 md5 编码;
- FileExists 判断文件或是目录是否存在;
- Merge 合并多个同类型的数据;
- GetSystemLanguageTag 获取当前系统的本地化信息;
- DumpGoSource 输出并格式化 Go 的源代码;
- CurrentFile 相当于部分语言的
__FILE__
; - CurrentDir 相当于部分语言的
__DIR__
; - CurrentLine 相当于部分语言的
__LINE__
; - CurrentFunction 相当于部分语言的
__FUNCTION__
;
- HasDuplication 检测数组是否包含重复的值;
安装
go get github.com/issue9/utils
文档
版权
# Functions
CurrentDir 获取`调用者`所在的目录
Deprecated: 请使用 source.CurrentDir 代替.
CurrentFile 获取`调用者`所在的文件
Deprecated: 请使用 source.CurrentFile 代替.
CurrentFunction 获取`调用者`所在的函数名
Deprecated: 请使用 source.CurrentFunction 代替.
CurrentLine 获取`调用者`所在的行
Deprecated: 请使用 source.CurrentLine 代替.
CurrentPath 获取`调用者`所在目录的路径
Deprecated: 请使用 source.CurrentPath 代替.
DumpGoFile 输出 Go 源代码到 path
会对源代码作格式化。
Deprecated: 请使用 DumpGoSource 代替.
DumpGoSource 输出 Go 源码到 path
会对源代码作格式化。
Deprecated: 请使用 source.DumpGoSource 代替.
FileExists 判断文件或是文件夹是否存在.
GetSystemLanguageTag 返回当前系统的本地化信息
*nix 系统会使用 LANG 环境变量中的值,windows 在 LANG 环境变量不存在的情况下,调用 GetUserDefaultLocaleName 函数获取。
Deprecated: 请使用 localeutil.SystemLanguageTag 代替.
HasDuplication 检测数组中是否包含重复的值
slice 需要检测的数组或是切片,其它类型会 panic; eq 对比数组中两个值是否相等,相等需要返回 true; 返回值表示存在相等值时,第二个值在数组中的下标值;.
MD5 将一段字符串转换成 md5 编码.
Merge 合并所有的元素
后一个元素的非零值将取代前一个元素中的值。 deep 是否递归合并子元素。 合并的元素只支持结构体或是结构体指针。.
Round 对一个浮点数进行四舍五入取整.
SplitPath 将路径按分隔符分隔成字符串数组。比如: /a/b/c ==> []string{"a", "b", "c"}.
TraceStack 返回调用者的堆栈信息
Deprecated: 请使用 source.TraceStack 代替.