mszhe的技术分享 人心惟危,道心惟微。惟精惟一,允执厥中。

golang计算上传的文件大小

2017-10-26

阅读:


如题,直接上代码

// 获取文件大小的接口
type Size interface {
	Size() int64
}

// 获取文件信息的接口
type Stat interface {
	Stat() (os.FileInfo, error)
}

// 文件大小
var size int64 = 0
if stat, ok := file.(Stat); ok {
    fileInfo, err := stat.Stat()
    if err != nil {
        panic(err)
    }
    size = fileInfo.Size()
} else if sizer, ok := file.(Size); ok {
    size = sizer.Size()
}