2013-06-16 11 views

Odpowiedz

61

zwraca wartość os.FileInfo, która z kolei ma metodę Size(). Tak więc, biorąc pod uwagę plik f kod byłaby zbliżona do

fi, err := f.Stat() 
if err != nil { 
    // Could not obtain stat, handle error 
} 

fmt.Printf("The file is %d bytes long", fi.Size()) 
10

Nieco więcej informacji pełnej odpowiedzi:

file, err := os.Open(filepath) 
if err != nil { 
    log.Fatal(err) 
} 
fi, err := file.Stat() 
if err != nil { 
    log.Fatal(err) 
} 
fmt.Println(fi.Size()) 
+3

Być może "odroczyć file.Close()" przed 'Stat()'? – Timmmm

12

Jeśli nie chcesz, aby otworzyć plik, można wywołać bezpośrednio os.Stat zamiast.

fi, e := os.Stat("/path/to/file"); 
if e != nil { 
    return e 
} 
// get the size 
size := fi.Size() 
Powiązane problemy