Membaca Data Berangka daripada Fail Teks dalam C
Masalah:
Pertimbangkan teks fail yang mengandungi data berangka, seperti:
45.78 67.90 87 34.89 346 0.98
Bagaimana kita boleh membaca fail ini dalam C dan tetapkan setiap nombor kepada pembolehubah?
Penyelesaian:
Kes 1: Membaca Bilangan Nilai Terhad
Jika bilangan nilai dalam fail diketahui, kami boleh merantai >> operator untuk membaca nilai secara berurutan:
int main() { float a, b, c, d, e, f; ifstream myfile("data.txt"); myfile >> a >> b >> c >> d >> e >> f; cout << a << "\t" << b << "\t" << c << "\t" << d << "\t" << e << "\t" << f << "\n"; myfile.close(); return 0; }
Kes 2: Membaca Bilangan Nilai yang Tidak Diketahui
Jika bilangan nilai tidak diketahui, kita boleh menggunakan gelung:
int main() { float a; ifstream myfile("data.txt"); while (myfile >> a) { cout << a << " "; } myfile.close(); return 0; }
Kes 3: Melangkau Nilai
Untuk melangkau bilangan nilai tertentu dalam fail, gunakan teknik berikut:
int skipped = 1233; for (int i = 0; i < skipped; i++) { float tmp; myfile >> tmp; } myfile >> value;
Kod ini melangkau nilai 1233 pertama dan membaca nilai ke-1234 ke dalam nilai berubah-ubah.
Atas ialah kandungan terperinci Bagaimana untuk Membaca Data Berangka daripada Fail Teks dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!