Spojrzałem w górę golang.org/pkg/os/#File, ale nadal nie mam pojęcia. Wydaje się, że nie ma sposobu, aby uzyskać długość pliku, czy coś przegapiłem?Jak uzyskać długość pliku w Go?
Jak uzyskać długość pliku w Go?
Spojrzałem w górę golang.org/pkg/os/#File, ale nadal nie mam pojęcia. Wydaje się, że nie ma sposobu, aby uzyskać długość pliku, czy coś przegapiłem?Jak uzyskać długość pliku w Go?
Jak uzyskać długość pliku w Go?
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())
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())
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()
Być może "odroczyć file.Close()" przed 'Stat()'? – Timmmm