2010-12-04 3 views
4

첫 번째 새 "토큰"(연산자 >>에 의해 아름답게 추출 된 표준 비 공백 문자 시퀀스)을 제거하지 않고 어떻게 읽을 수 있습니까? 시내? 문자열을 추출하여 다시 넣어야하는지 확인하고 내부 스트림 반복기를 재설정 할 수 있습니까? 나는 ...이 작동 할 수 있다고 생각하지만, 아무 생각이 어떻게 구현하지해야stringstream :: operator >> 읽기만하고 스트림에서 다음 토큰을 추출하지 않습니다.

예 :

#include <string> 
    using std::string; 
#include <sstream> 
    using std::stringstream; 

int main() 
{ 
    string s("test string \\ bla blie"); 
    stringstream ss(s); 

    string token; 
    while(ss >> token) 
    { 
     if("\\" == token) 
      break; 
     else 
      cout << "Token is: " << token << "\n"; 
    } 
    return 0; 
} 

겠습니까 tellg 여기 seekg 일 전에 조건부 스트림 추출 후?

감사합니다.

답변

4

이전에 스트림 추출 후 조건부로 tellg 및 seekg가 작동합니까?

예.

+0

모두 올바르게 구현되었으며 작동합니다. Dang, C++은 강력합니다. D. 자신감을 가져 주셔서 감사합니다. 누구든지 구현을 원한다면 간단한 예제를 요청하십시오. (코드는 클래스 중심이므로 모든 변수가 꽤 구분되어 있으므로 코드를 복사하여 붙여 넣을 수 없습니다.) – rubenvb

관련 문제