Friday, December 29, 2006

C++'da ifstream kullanmak

C++'da ifstream'in boş satırları okumaması için kullanılmasını önerdiğim kod [Bkz. C++'da fstream kullanmak] eğer formatted data dosyasında negatif sayı ile başlayan bir satır varsa o satırı ihmal ediyor.
Bundan kurtulmanın da yolu var. Biraz çirkin gibi ama eğer komentlediğiniz satırlar '-' karakteri ile başlamıyorsa şimdilik kullanılabilir.

örneğin aşağıdaki kod formatted data dosyasında '%' karakterini koment satırı olarak kabul ediyor ayrıca negatif sayı ile başlayan satırları da hatasız okuyor.
Not: Bunu kaynaklarda kolayca bulabilirsiniz. Entry'i yazma sebebim daha önce verdiğim kodun muhtemel hatasını anlatmaktır.

if(file_to_read.peek()!='-'){ //satır başında negatif sayı yoksa
if(!isdigit(file_to_read.peek())|| file_to_read.peek()=='%') {
file_to_read.ignore();
continue;
}
}

Labels: ,

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home