私は、std :: stringstreamに格納されているコンマ区切りの値のリストを取得して、それらをベクトルのように入れたいと思うVisual Studio 2008 C++プロジェクトを持っていますこの:構造体のベクトルにcsvストリームを非直列化する
これを実現するための最良の方法は何{ { "My", "Mother", "Eats" },
{ "Donuts", "From", "Menards" } }
:ストリームは「私、母、食べる、\メナーズから、nDonutsを、」含まれている場合、得られた構造があろうと、このような
struct Foo
{
std::string A;
std::string B;
std::string C;
}
typedef std::vector<Foo> FooList;
std::stringstream csv; // contains comma separated values
?文字列がどのようにベクトルにコピーされるかを指定する方法があるなら、私はboost.split
を使って調べていました。
FooList list;
boost::split(list, csv.str(), boost::is_any_of(","));
私は、ストリームデータを管理しているので、それは少し異なり、物事が容易になり、フォーマットならば、私はそれを行うことができます。
ウェイの詳細情報:http://stackoverflow.com/questions/236129/how-to-split-a-string-in-c –