我正在使用以下代码段将值写入.txt文件:
fstream f1;
f1.open("output.txt", ios::out);
{
for (const auto& avg : clusAvg)
{
f1 << avg << ",";
}
}
f1.close();
这将生成一个列表,看起来像:20,30,40,50,
我的问题是,如何消除列表中的最后一个逗号?
答案 0 :(得分:2)
尝试这样做
fstream f1;
f1.open("output.txt", ios::out);
{
bool first = true;
for (const auto& avg : clusAvg)
{
if(!first) f1 << ", ";
first = false;
f1 << avg;
}
}
f1.close();
答案 1 :(得分:0)
您可以为除最后一个元素以外的所有内容写一个逗号,然后写出最后一个元素:
if (! clusAvg.empty())
{
for (auto i = 0u; i < clusAvg.size() - 1; ++i)
f1 << clusAvg[i] << ", ";
f1 << clusAvg.back();
}