Pertanyaan Bagaimana Anda mendapatkan ukuran file dalam C #?


Saya perlu cara untuk mendapatkan ukuran file menggunakan C #, dan bukan ukuran pada disk. Bagaimana ini mungkin?

Saat ini saya memiliki lingkaran ini

foreach (FileInfo file in downloadedMessageInfo.GetFiles())
{
    //file.Length (will this work)
}

Apakah ini mengembalikan ukuran atau ukuran pada disk?


185
2017-09-04 18:32


asal


Jawaban:


FileInfo.Length akan mengembalikan panjang file, dalam byte (bukan ukuran pada disk), jadi ini adalah apa yang Anda cari, saya pikir.


205
2017-09-04 18:34



Jika Anda sudah memiliki jalur file sebagai masukan, ini adalah kode yang Anda butuhkan:

long length = new System.IO.FileInfo(path).Length;

222
2017-12-31 20:53



FileInfo.Length akan melakukan trik (per MSDN it "[g] ets ukuran, dalam byte, dari file saat ini.") Ada bagus halaman di MSDN pada tugas I / O umum.


26
2017-09-04 18:34



MSDN FileInfo.Length mengatakan bahwa itu adalah "ukuran file saat ini dalam byte."

Pencarian Google saya yang khas untuk sesuatu seperti ini adalah: msdn FileInfo


7
2017-09-04 18:35



Ini mengembalikan panjang isi file


5
2017-09-04 18:34



Ukuran pada disk mungkin berbeda, jika Anda memindahkan file ke sistem file lain (FAT16, NTFS, EXT3, dll)

Seperti yang dikatakan penjawab lainnya, ini akan memberi Anda ukuran dalam byte, bukan ukuran pada disk.


3
2017-09-04 18:37



saya mendapatkan ukuran file dengan File.ReadAllBytes(@"D:\\testPA.txt").Length


-15
2018-01-30 15:54