Jadi saya telah melihat banyak solusi di situs ini dan tutorial tentang membaca dari file teks di C++, namun belum menemukan solusi untuk masalah saya. Saya baru di C++ jadi saya rasa saya mengalami kesulitan dalam mengumpulkan beberapa dokumentasi untuk memahami semuanya.
Apa yang saya coba lakukan adalah membaca nomor file teks sambil mengabaikan komentar di file yang dilambangkan dengan "#". Jadi contoh filenya akan terlihat seperti:
#here is my comment
20 30 40 50
#this is my last comment
60 70 80 90
Kode saya dapat membaca angka dengan baik ketika tidak ada komentar apa pun, tetapi saya tidak cukup memahami penguraian aliran untuk mengabaikan komentar. Ini semacam solusi peretasan saat ini.
/////////////////////// Read the file ///////////////////////
std::string line;
if (input_file.is_open())
{
//While we can still read the file
while (std::getline(input_file, line))
{
std::istringstream iss(line);
float num; // The number in the line
//while the iss is a number
while ((iss >> num))
{
//look at the number
}
}
}
else
{
std::cout << "Unable to open file";
}
/////////////////////// done reading file /////////////////
Apakah ada cara agar saya dapat menggabungkan penanganan komentar dengan solusi ini atau apakah saya memerlukan pendekatan yang berbeda? Saran apa pun akan sangat bagus, terima kasih.
line.assign(line.substr(0,line.find('#')));
(sebagai pernyataan pertama dalam perulangan while) akan menjadi salah satu cara untuk membuat perubahan yang diperlukan dengan cepat. - person jogojapan   schedule 09.11.2012