C++ STL - stringstream

less than 1 minute read

구분자(delimiter)를 활용한 문자열 파싱(parsing)

  • 구분자를 활용해서 문자열을 파싱해야할 때 유용한 방법이다.

헤더파일 sstream 선언

#include <sstream>

stringstream 사용법

string str = "10,200,30,450";
stringstream ss(str);
string token;

while(getline(ss, token, ',')){ // 구분자 콤마(,)
    // do something..
}

// 공백으로 구분되어 있다면
string s = "190 205 39 40";
stringstream stm;
stm.str(s); // 스트림 stm의 값을 문자열로 바꾸어 준다.

int num;
while(stm >> num){ // 입력 연산자 ">>" 는 공백 또는 개행문자를 버퍼에 남겨둔다.
    // do something..
}

Categories:

Updated:

Leave a comment