Menentukan Saiz Fail dalam C : Pendekatan Boleh Dipercayai dan Mudah Alih
Dalam C , mendapatkan saiz fail adalah operasi penting yang sering dihadapi dalam pengaturcaraan tugasan. Untuk mengenal pasti kaedah yang paling sesuai untuk mencapai matlamat ini, adalah penting untuk mempertimbangkan faktor seperti mudah alih, kebolehpercayaan dan kesederhanaan kod.
Satu pendekatan yang digunakan secara meluas ialah menggunakan kelas ifstream perpustakaan standard C. Dengan membuka fail dalam mod binari dan menentukan bendera makan, aliran input mencari ke penghujung fail. Selepas itu, fungsi ahli tellg() boleh digunakan untuk mendapatkan semula kedudukan semasa dalam fail, dengan berkesan memberikan saiz fail.
Contoh Kod:
#include <fstream> std::ifstream::pos_type filesize(const char* filename) { std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary); return in.tellg(); }
Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa pendekatan ini mempunyai potensi kaveat. tellg() tidak selalu melaporkan saiz fail dengan tepat pada platform tertentu. Untuk penyelesaian yang lebih mantap, kaedah alternatif, seperti mencari ke hujung fail menggunakan seekg() dan tellg() sebelum membuka fail dalam mod binari, mungkin diperlukan.
Coretan kod yang disediakan mengira dengan berkesan saiz fail berdasarkan anggapan bahawa fail boleh dibuka dan diakses. Mekanisme pengendalian ralat yang betul harus dilaksanakan dalam aplikasi gred pengeluaran untuk mengambil kira kemungkinan pengecualian semasa membuka atau membaca fail.
Atas ialah kandungan terperinci Bagaimana untuk Menentukan Saiz Fail dengan Amanah dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!