如何从C#中的设置文件传递字符串文字

时间:2012-10-26 02:46:58

标签: c# string settings app-config literals

我想创建一个配置设置,将字符串传递给我的应用程序。该字符串基于网页中的某些文本,这是我需要允许在配置文件中更改它的原因。

我要传入的字符串是

A)

Forecast Summary:</b> 
    <span class="phrase">

当我用它来搜索页面时,字符串文字的格式是

b)中

string myString = "Forecast Summary:</b> \n        <span class=\"phrase\">";

问题是传入的字符串(通过将上面(a)中的文本粘贴到App Settings屏幕中)以格式

出现

c)中

"Forecast Summary:</b> \r\n        <span class=\"phrase\">"

(已插入回车符)

有没有办法在App.Config中输入字符串作为“完全”字符串文字

2 个答案:

答案 0 :(得分:1)

您需要使用CDATA或XML转义码。

<myxml>
    <record>
        <![CDATA[
        Line 1 <br />
        Line 2 <br />
        Line 3 <br />
        ]]>
    </record>
</myxml>

请点击此处了解有关XML Escaping

的更多信息

了解更多信息,请参阅:here&amp; here

答案 1 :(得分:0)

我首先通过直接在App.Config中输入XML编码字符来解决它。

<setting name="DataExtractFrom" serializeAs="String">
     <value>Forecast Summary:&lt;/b&gt; &#10;        &lt;span class="phrase"&gt;</value>
</setting>

(之前我已将其粘贴到项目的“设置”屏幕中,该屏幕必须添加额外的回车)

然后

如上所述,如果我使用CDATA格式编辑App.Config文件,它就有效。

<setting name="DataExtractFrom" serializeAs="String">
   <value><![CDATA[Forecast Summary:</b> \n        <span class=\"phrase\">]]></value>
</setting>

这在配置文件中看起来更干净,所以我最终使用了这种格式。