【发布时间】:2014-02-21 06:45:50
【问题描述】:
我正在阅读以下文件:
文件.txt
Y:\Test\DOCUMENTS\DOCUMENTS\Flux Assurance 2\multi\ACTEPROC_OK\018-1-R.xml Y:\Test\DOCUMENTS\DOCUMENTS\Flux 保证 2\multi\ACTEPROC_OK\A018-2-R.xml Y:\Test\DOCUMENTS\DOCUMENTS\Flux Assurance 2\multi\ACTEPROC_OK\021-1-R.xml Y:\Test\DOCUMENTS\DOCUMENTS\Flux 保证 2\multi\ACTEPROC_OK\A021-2-R.xml Y:\Test\DOCUMENTS\DOCUMENTS\Flux Assurance 2\multi\ACTEPROC_OK\022-1-R.xml Y:\Test\DOCUMENTS\DOCUMENTS\Flux 保证 2\multi\ACTEPROC_OK\022-2-R.xml Y:\Test\DOCUMENTS\DOCUMENTS\Flux Assurance 2\multi\ACTEPROC_OK\025-1-R.xml
源代码:
#include <iostream>
#include <vector>
#include <boost/iostreams/device/mapped_file.hpp>
#include <boost/iostreams/stream.hpp>
std::vector<string> readFile(string);
int main()
{
std::vector<string> res = readFile("file.txt");
return 0;
}
std::vector<string> readFile(string f)
{
boost::iostreams::stream<boost::iostreams::mapped_file_source> str(f);
std::vector<string> app;
for(string x; str >> x;)
{
app.push_back(x);
}
return app;
}//end
问题:
由于Flux和Assurance 2之间有一个空格,所以它把空格当作分隔符。
怎样才能去掉分隔符,或者明确地识别分隔符是什么?
【问题讨论】:
-
添加解决方案作为答案。这就是为什么它们被称为答案。