package main import ( "log" "os" "github.com/rakyll/magicmime" ) func getFileSize(s string) (size int64, err error) { f, err := os.Open(s) if err != nil { size = 0 return } fi, err := f.Stat() if err == nil { size = fi.Size() } else { size = 0 } return } func getFileMime(s string) (mimetype string, err error) { if err := magicmime.Open(magicmime.MAGIC_MIME_TYPE | magicmime.MAGIC_SYMLINK | magicmime.MAGIC_ERROR); err != nil { log.Fatal(err) return "", err } defer magicmime.Close() mimetype, err = magicmime.TypeByFile(s) if err != nil { log.Fatalf("error occured during type lookup: %v", err) } //log.Printf("mime-type: %v", mimetype) return }