收集、管理和分享有用的代码片段,提高开发效率
自定义时间格式输出
func formatTime(t time.Time) string {
return t.Format("2006-01-02 15:04:05")
}
删除切片重复元素
func removeDups(s []string) []string {
k := make(map[string]bool)
for , v := range s {
k[v] = true
}
result := []string{}
for key := range k {
result = append(result, key)
}
return result
}
获取带默认值的环境变量
func getEnv(envStr, defaultVal string) string {
if val, exists := os.LookupEnv(envStr); exists {
return val
}
return defaultVal
}
递归遍历目录文件
func listFiles(path string) ([]string, error) {
var files []string
err := filepath.Walk(path, func(path string, info os.FileInfo, err error) error {
if !info.IsDir() {
files = append(files, path)
}
return nil
})
return files, err
}
使用gzip压缩文件
func compressFile(src, dst string) error {
in, err := os.Open(src)
if err != nil {
return err
}
defer in.Close()
out, err := os.Create(dst)
if err != nil {
return err
}
defer out.Close()
gz := gzip.NewWriter(out)
defer gz.Close()
_, err = io.Copy(gz, in)
return err
}
解压gzip文件
func decompressFile(src, dst string) error {
in, err := os.Open(src)
if err != nil {
return err
}
defer in.Close()
gz, err := gzip.NewReader(in)
if err != nil {
return err
}
defer gz.Close()
out, err := os.Create(dst)
if err != nil {
return err
}
defer out.Close()
_, err = io.Copy(out, gz)
return err
}
高效管理您的代码片段,提高开发效率
通过关键字、语言或分类快速查找代码片段,支持模糊搜索和过滤功能
支持多种编程语言的语法高亮,使代码更加清晰易读
随时随地访问您的代码片段库,支持桌面和移动设备
浏览最受欢迎的代码分类