首先,嗨!这是我的第一篇文章!
我正在编写一个应用程序来读取和写入串行端口,一切都很好,但是由于在我的公司我们有不同类型的扫描仪,它们配置有不同的前缀/后缀字符,其中大多数都有 \r\n序列。
所以我决定在我的 xml 配置文件中包含这个后缀,如下所示:
<rPortSuffix>\r\n</rPortSuffix>
当我阅读我的 xml 文件时,我使用它
case "rPortSuffix":
srPortSuffix = xmlReader.Value;
break;
问题是,当文本值传递给 srPortSuffix 时,变量存储的是“\\r\\n”,而不是“\r\n”,所以当我尝试读取串行端口时,由于不正确的后缀字符串(对于 NewLine 常量)
spRead.NewLine = srPortSuffix; //NewLine constant read in XML file
sReadData = spRead.ReadLine(); //Storing the read data
所以我尝试了:
srPortSuffix= Regex.Replace(srPortSuffix, @"\\", @"\");
但没有成功。有小费吗?
TL;博士
如何使从 xml 文件中读取的“\r\n”值完全像这样读取,而不是“\\r\\n”?
编辑:
正如 Jirka Hanika 所建议的,我只是将字符串从 "\r\n" 更改为 ascii 代码,如下所示:
<rPortSuffix> </rPortSuffix>
现在我的应用程序适用于我正在测试的两种类型的扫描仪。
谢谢!!