String 在字符串中使用特殊(0-31)ASCII字符是否危险?

String 在字符串中使用特殊(0-31)ASCII字符是否危险?,string,text,compression,ascii,String,Text,Compression,Ascii,我正在构建一个字符串压缩器,出于简单的原因,我想使用一些不可打印的字符。 1) 使用0-31 ASCII字符在某种程度上是否“不好”? 2) 这些字符可以出现在普通文本字符串中吗 如果答案是“部分”: 3) 在这种情况下,哪一个更好?我想我最多需要9个。答案是这取决于你如何使用它。如果您将“字符串”视为二进制,那么根据定义,二进制可以有任何值。但是,如果要读取/打印,则使用字符0-31可能会导致严重问题 在大多数情况下,这并不是什么大不了的事情,只是0在很多平台上都是“字符串的结尾”。不过,这完

我正在构建一个字符串压缩器,出于简单的原因,我想使用一些不可打印的字符。 1) 使用0-31 ASCII字符在某种程度上是否“不好”? 2) 这些字符可以出现在普通文本字符串中吗

如果答案是“部分”:
3) 在这种情况下,哪一个更好?我想我最多需要9个。答案是这取决于你如何使用它。如果您将“字符串”视为二进制,那么根据定义,二进制可以有任何值。但是,如果要读取/打印,则使用字符0-31可能会导致严重问题


在大多数情况下,这并不是什么大不了的事情,只是0在很多平台上都是“字符串的结尾”。不过,这完全取决于你如何使用它。我的建议是,至少要避免使用字符0。如果您希望用户能够复制和粘贴字符串,那么这些都不合适。换句话说,它们必须是可打印字符。

我添加了一些16-27个字符。到目前为止没有问题。