我有这个ostringstream包含有关文件夹和文件的信息,文件夹列表及其信息从“folders:”开始,在“files:”之前结束,而文件列表从包含“files:”的行开始: “直到流的末尾,我的目标是从那个ostringstream生成两个向量,一个用于文件夹,另一个用于文件,在那些向量中我想使用每个文件夹或文件的映射来存储相对于它们的信息,
示例:一个向量“MyFolders”,在此地图中包含3个map<string,string>
类型的项目
MyFolders [0] [“id”]将返回例如“109”
MyFiles [0] [“name”]将返回例如“a_file.jpg”
要解析的ostringstream的内容:
folders:
:
id: 109
parent_id: 110
name: first_folder
// other informations about a folder ...
path: /1/105/110/
:
id: 110
parent_id: 103
name: second_folder
// other informations about a file ...
path: /1/105/
files:
:
id: 26
parent_id: 105
name: a_file.jpg
size: 7345
// other informations about a file ...
path: /1/105/
:
id: 69
parent_id: 105
name: another_file.txt
// other informations about a file ...
size: 7345
path: /1/105/
答案 0 :(得分:0)
你可以使用2个载体,如
vector<int,int,char*,char*>file and //for saving id,parent id,name and path
vector<int,int,char*,char*>folder
并使用istream::getline
检查此行是否为"file" or "folder"
要获得有关getline和文件函数的更多信息,您可以从我在评论部分中给出的链接检查实现和逻辑。