首先,嗨!,這是我的第一篇文章!C#如何閱讀 r n字符串
我正在寫一個應用程序來讀取和寫入串行端口,所有工作都很好,但由於在我們公司我們有不同類型的掃描儀,它們配置了不同的前綴/後綴字符,其中大多數都有\ 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; DR
我怎樣才能讓 「\ r \ n」 從XML文件中讀取值讀取,而不是 「\\ \\ [R N」 完全一樣,?
編輯:
正如爾卡Hanika建議,我只是改變了我的字符串從 「\ r \ n」 來的ASCII碼,因爲這樣的:
<rPortSuffix> </rPortSuffix>
現在我的應用程序是爲兩種類型的掃描儀工作,我正在測試它。
謝謝!
您可以存儲新代碼的ASCII碼,並將其解析爲代碼中的實際字符。只是一個想法。 – Justin 2012-08-02 16:27:42
stringbuilder會有用嗎?也許StringBuilder.AppendLine();?基本上將你的數據保存到一個stringBuilder的變量中,並在每一行添加\ r \ n? – plast1K 2012-08-02 16:28:21
該值可能是'\ r \ n',但是當您在調試器中查看該變量時,它將會將其轉義。 – SwDevMan81 2012-08-02 16:28:44