如何将URI列表编码为字符串?

时间:2012-09-18 00:23:36

标签: c++ html qt url uri

我需要将http URI的列表存储为单个字符串。语言/工具包应该无关紧要,但为了完整性,语言是C ++,我使用的主要工具包是Qt(我实际上是想将一个字符串列表放到一个QString中,因为它是为数不多的Qt类型之一当它进入QDataStream => QVariant => QSettings时,它不会以非人类可读的方式被腌制。)

是否存在'安全'字符,我可以用?

分隔这个URI字符串列表

2 个答案:

答案 0 :(得分:3)

只要URI中的所有空格都编码为+,您就可以使用空格。您还可以使用%~之类的组合或%的任意组合,后跟在URI中%之后无法显示的字符。使用换行符或制表符也可以。

答案 1 :(得分:2)

这取决于URI是否为百分比编码(例如,当您在URL栏中的URL中键入空格并且浏览器将其替换为%20时)。

如果它们是编码的,则可以使用许多字符,甚至是单个空格。如果没有,我认为没有像这样的“安全”字符。在这种情况下,也许您可​​以在将URI存储在一起之前对其进行编码,并可能在以后解码它们。