重複の可能性:
C++ で文字列をトークン化するにはどうすればよいですか?
私はこのテキストファイルを持っています
q1 t q2
q2 e q3
q3 x q4
q4 t q5 q6 q11
q5 | q6 q11
スペースで区切られた各要素を抽出したい。たとえば、1 行目では、「q1」「t」と「q2」を別々のトークンとして抽出できるようにしたいと考えています。
これには2つの方法があると思います
ifstream>> を使用して、トークンごとにファイルから読み取ります。このアプローチで私が抱えている問題は、次の行に移動できるように、行の終わりに到達したタイミングを知る方法がわからないことです。
もう 1 つの方法は、getline(); を使用して行全体を一度に取得することです。このアプローチの問題は、文字列を自分でトークン化する必要があり、各行が異なるため、それが最善のアイデアかどうかわかりません。strtok() 以外に、これを行う方法が組み込まれていないことにかなり驚いています。これは、私が望むものではないようです。みんなありがとう、助けていただければ幸いです。