Tôi có mã để đọc tệp có số phao trên đường được lưu trữ như sau: "3.34 | 2.3409 | 1.0001 | ... | 1.1 |". Tôi muốn đọc chúng bằng cách sử dụng istringstream, nhưng nó không hoạt động như tôi mong đợi:C++ - liên tục sử dụng istringstream
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++;
}
Trong điểm được đánh dấu, hàng được sao chép vào dòng riêng biệt chỉ lần đầu tiên. Trong lần lặp tiếp theo, nó không hoạt động và nó không làm gì cả. Tôi hy vọng nó có thể được sử dụng nhiều lần mà không cần xây dựng đối tượng istringstream mới trong mỗi lần lặp.
Cảm ơn rất nhiều. Đó là thông tin rất quan trọng mà tôi đã bị thiếu trong nhiều mã số;) – Naomak
Liệu nó có thực sự cần phải theo sau? Tôi nghĩ rằng bạn có thể xóa nó trước khi quá. – CashCow