将 QStringList 打包到 QString 并解压回来

新手上路,请多包涵

我正在寻找一种简单且万无一失的方法来将任意 QStringList 转换为单个 QString 并返回。

 QStringList fruits;
fruits << "Banana", "Apple", "Orange";
QString packedFruits = pack(fruits);
QStringList unpackFruits = unpack(packedFruits);

// Should be true
// fruits == unpackFruits;

对于此类问题,最简单的解决方案可能是什么?

原文由 Aleph0 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 567
1 个回答

QStringListQString - QStringList::join

将所有字符串列表的字符串连接成一个字符串,每个元素由给定的分隔符分隔(可以是空字符串)。

 QString pack(QStringList const& list)
{
    return list.join(reserved_separator);
}


QStringQStringList - QString::split

在出现 sep 的地方将字符串拆分为子字符串,并返回这些字符串的列表。如果 sep 与字符串中的任何位置都不匹配,则 split() 返回包含该字符串的单元素列表。

 QStringList unpack(QString const& string)
{
    return string.split(reserved_separator);
}

原文由 LogicStuff 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题