如何根据字符的 ASCII 值描述配置文件中的字符?

How can I describe a character in a configuration file, based on its ASCII value?

在使用 C# 编程时,可以根据其 ASCII 值使用单个字符,例如:

if (whatever_string.EndsWith("\u06"))
...

我想将ASCII 字符串放入配置中。由于我经常需要进行字符串操作,所以我想将其作为字符串添加到配置中,因此我的对象如下所示:

Object definition
...
  public string AckChars { get; private set; }

并且在 app.config 文件中,我将其放置如下:

<appSettings>
  <add key="AckChars" value="\u06"/>

但是,当我从配置中读取这个时,基于此:

var appSettings = ConfigurationManager.AppSettings;
...
string value;
value = appSettings[key];

我的AckVars在手表里是这样的-window(别笑:-)):

AckChars[0] 92 '\' char
AckChars[1] 117 'u' char
AchChars[2] 48 '0'  char
AckChars[3] 54 '6'  char

那么,在 C# 配置文件中输入一个字符,知道它会被读取为整个字符串的方法是什么?

根据 Olivier Jacot-Descombes

的回答进行编辑

U+0006放入配置文件后,结果如下:

AckChars[0]  85 'U'  char
AckChars[1]  43 '+'  char
AckChars[2]  48 '0'  char
AckChars[3]  48 '0'  char
AckChars[4]  48 '0'  char
AckChars[5]  54 '6'  char

所以,这似乎不起作用。

显然问题出在我用来读取配置文件的代码上。我添加了以下内容(在阅读 appSettings 中的 value 之后):

if ((value.ToUpper().StartsWith("\X")) || 
    (value.ToUpper().StartsWith("\U")))
{
value = ((char)Int32.Parse(value.Replace(value.Substring(0,2),string.Empty))).ToString();
}

像这样,我可以在我的配置文件中放入 \x03\U0006 或其他值,它们将被读取为单个字符,整数值作为 ASCII 代码。可能会进一步详细说明(例如 Unicode),但这是第一个开始。