|
|
|
@ -2,6 +2,7 @@ package handler |
|
|
|
|
|
|
|
import ( |
|
|
|
"encoding/json" |
|
|
|
"fmt" |
|
|
|
"net/http" |
|
|
|
"os" |
|
|
|
"path/filepath" |
|
|
|
@ -23,6 +24,8 @@ type FileJson struct { |
|
|
|
Fname string `json:"fname"` |
|
|
|
Dirflag bool `json:"dirflag"` |
|
|
|
Isbackup int `json:"isbackup"` |
|
|
|
Fhash string `json:"hash"` // hash
|
|
|
|
Fsize string `json:"size"` //文件大小, 输出带单位的大小
|
|
|
|
} |
|
|
|
|
|
|
|
type FilesListJson struct { |
|
|
|
@ -65,7 +68,15 @@ func SerInfo(w http.ResponseWriter, r *http.Request) { |
|
|
|
if strings.Contains(v.Name(), "backup") { |
|
|
|
isbak = 1 |
|
|
|
} |
|
|
|
flist.Flist = append(flist.Flist, FileJson{Fname: v.Name(), Dirflag: v.IsDir(), Isbackup: isbak}) |
|
|
|
// 计算文件的hash
|
|
|
|
fhash := util.CalacHash(v) |
|
|
|
// 文件大小
|
|
|
|
// 获取文件大小(以字节为单位)
|
|
|
|
sizeInBytes := fileInfo.Size() |
|
|
|
sizeStr := fmt.Sprintf("%.2f KB", float64(sizeInBytes)/1024) |
|
|
|
// fmt.SPrintf("文件 %s 的大小为 %.2f KB\n", filename, sizeInKB)
|
|
|
|
|
|
|
|
flist.Flist = append(flist.Flist, FileJson{Fname: v.Name(), Dirflag: v.IsDir(), Isbackup: isbak, Fhash: fhash, Fsize: sizeStr}) |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|