gpt4 book ai didi

c# - 对字符串中的复杂定界符序列使用随机 Unicode 是否安全?

转载 作者:行者123 更新时间:2023-11-30 18:54:15 26 4
gpt4 key购买 nike

问题:从程序稳定性和保证系统实际运行的角度来看,使用¦§这样的字符安全性如何? > 或 用于字符串中的复杂定界符序列?我能可靠地相信我不会在程序中遇到任何错误读取这些问题吗?


我在一个系统中工作,使用 C# 代码,我必须在一个字符串中存储一组相当复杂的信息。此字符串的可读性仅在计算机端是必需的,最终用户应该只能在通过适当的方法解析后才能看到该信息。因为这些字符串中的一些数据将是可变大小的集合,所以我使用不同的分隔符来标识字符串的哪些部分对应于某个组织层级。有足够多的例子,标准的 ;、| 和类似的集合已经用完了。我考虑过两个字符的定界符,例如 ;# 或 ;|,但我觉得这样效率很低。存储一个字符与存储两个字符可能没有那么大的性能差异,但是当我可以选择较小的选项时,选择较大的选项感觉不对。

所以最后,我考虑使用双 Dagger 和节这样的字符集。它们只占用一个字符,而且绝对不会出现在我要存储的实际文本中,因此它们不会被任何东西混淆。

但是字符编码很挑剔。虽然最终用户的可见性毫无意义(因为他们实际上不会看到它),但我最近开始担心系统中的程序将如何读取它。字符串存储在一个数据库中,而一个单独的程序负责将字符串编码和解码为不同的对象类型,以供应用程序的其余部分使用。如果期望以一种方式编写某些内容,可能会以另一种方式编写,那么整个系统可能会失败,我真的不能让这种情况发生。那么使用这些字符作为背景分隔符是否安全?

最佳答案

因为您必须将数据编码为字符串,所以我假设这是因为您正在与其他系统交互。为什么不使用像 XML 这样的东西呢?或 JSON为此而不是发明自己的数据格式?

使用 XML,您可以指定使用的编码,例如:

<?xml version="1.0" encoding="UTF-8"?>

关于c# - 对字符串中的复杂定界符序列使用随机 Unicode 是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2668995/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com