Şunun gibi depolanmış satırdaki float numaralarını okuyabilmek için bir kodum var: "3.34 | 2.340 | | 1.000 | | | 1.1 |". Ben istringstream kullanarak bunları okumak istiyorum ama beklediğiniz gibi çalışmıyor: işaretli noktadaC++ - istringstream'i tekrar tekrar kullanarak
string row;
string strNum;
istringstream separate; // textovy stream pro konverzi
while (getline(file,row)) {
separate.str(row); // = HERE is PROBLEM =
while(getline(separate, strNum, '|')) { // using delimiter
flNum = strToFl(strNum); // my conversion
insertIntoMatrix(i,j,flNum); // some function
j++;
}
i++;
}
, sıra ayrı akımına sadece ilk sefer içine kopyalanır. Sonraki yinelemede işe yaramıyor ve hiçbir şey yapmıyor. Her iterasyonda yeni istringstream nesnesi oluşturmadan daha fazla kez kullanılmasının mümkün olacağını bekledim.
Çok teşekkürler. Bu, birçok kodda eksik olduğum çok önemli bir bilgidir;) – Naomak
Gerçekten de olsa sonra olmak zorunda mı? Bence bunu daha önce de temizleyebilirsin. – CashCow