2013-03-30 21 views
5

myFile uygulamasında EOF'ye ulaştığımda Seekg çalışmıyor gibi görünüyor.Neden seekg ile çalışmıyor?

ifstream myFile("/path/file"); 
for(int i; i < 10; i++){ 
    myFile.seekg(0);//reset position in myFile 
    while(getline(myFile, line)){ 
     doSomething 
    } 
} 

Öyleyse, artık giriş akıntısı her döngü açıyorum:

for(int i; i < 10; i++){ 
    ifstream myFile("/path/file");//reset position in myFile 
    while(getline(myFile, line)){ 
     doSomething 
    } 
} 

Ama doğrusu 0 konumuna isteyeceği Bunu nasıl başarabiliriz?

+0

[seekg() işlevinin olası bir kopyası başarısız] (http://stackoverflow.com/questions/11264764/seekg-function-fails) – amo

cevap

10

Eğer myFile.seekg() çağrısı önce hata bayrakları temizlemek emin olun: EOF bayrağı sonra

myFile.clear(); 

ben kümesi vardır, bir şey ayıklamak mümkün olmayacaktır. Tekrar elde edebilmek için bu bayrakları temizlemelisin.

+0

Çalışıyor, teşekkürler. – rluks