我有一个向量:
可能是重复问题:
如何将C ++向量转换为CSV格式,在每个元素后添加逗号
其中包含:
std::vector<std::pair<int, QString> > recordingArray;
我需要将它转换为逗号分隔的字符串,以便存储在数据库中(是否有更好的数据格式 - 所有数据都需要放在一个字段中)。
如何将其转换为逗号分隔的字符串?
然后,如何将其转换回去?
我有一个向量:
可能是重复问题:
如何将C ++向量转换为CSV格式,在每个元素后添加逗号
其中包含:
std::vector<std::pair<int, QString> > recordingArray;
使用std::transform
和一个std::stringstream
来实现此操作。
std::stringstream str;
std::transform(
recordingArray.begin(),
recordingArray.end(),
std::ostream_iterator<std::string>(str, ", "),
[](const std::pair<int, QString> &p) { return std::to_string(p.first) + ", " + p.second.toStdString(); });
string line = "";
auto it = recordingArray.begin();
while(it != recordingArray.end())
{
line.append(*it);
line.append(',');
}
string toString(std::pair<int, QString>> input)
{
/* convert the data to a string format */
}
line.append(toString(*it))
。,
。 - Lily Ballardif(it != --recordingArray.end())
。 - cael ras