错误!在strings.xml资源Android中使用CDATA

let*_*oot 13 android cdata

我的Android项目中有一个字符串资源,我使用CDATA部分将我的字符串嵌入XML:

<string name="ackng"><![CDATA[
    <html>
<body>
    <h1>Acknowledgements</h1> 
    <p>
        Senator  Paul  Wellstone's  book,  the  Conscience  of  a  Liberal:  Reclaiming  the
        compassionate agenda was an inspiration and an affirmation that you can be truthful
        and  honest  as  a  politician,  and  compassionate  and  people-centred  as  a  representative.
        And  as  President  Bill  Clinton  affirmed  as  he  addressed  the  joint  session  of  the
        National  Assembly  on  26th  August,  2000,  thus:
        “Every  nation  that  has  struggled  to  build  democracy  has  found  that  success
        depends on leaders  who believe government exists to  serve people, not the
        other  way  around.”
    </p>
    <p>
        Paul  Wellstone's  book  was  my  inspiration  for  the  launching  of  the  compassionate
        agenda  in  February  2002.  Clinton's  speech  affirmed  my  convictions  regarding  the
        sanctity of the democratic mandate to serve the people. I acknowledge the clarity of
        their  focus  and  the  inspiration  their  works  continue  to  provide.
    </p>
</body></html>]]></string>
Run Code Online (Sandbox Code Playgroud)

但是eclispe正在返回此错误:

[2013-02-18 00:11:05 - MyPA] C:\Users\Daniel\workspace\MyPA\res\values\strings.xml:191: error: Apostrophe not preceded by \ (in  <html>
Run Code Online (Sandbox Code Playgroud)

Rag*_*ood 12

Apostrophes(')必须使用转义\.尝试使用\'而不是'整个String的内容.

此外,您还需要"在以下部分中进行以下操作\":

“Every  nation  that  has  struggled  to  build  democracy  has  found  that  success
depends on leaders  who believe government exists to  serve people, not the
other  way  around.”
Run Code Online (Sandbox Code Playgroud)


Ste*_*epo 8

使用&#39;而不是撇号.在HTML输出(我猜它是html)相等的情况下,字符的效果.因此&#39;将显示为'.


Mik*_*uel 8

字符串格式和样式

转义撇号和引号

如果你有一个撇号或字符串中的一个报价,你必须要么逃避它或其他类型的封闭引号括起来的整个字符串.例如,以下是一些有效和无效的叮咬:

<string name="good_example">"This'll work"</string>
<string name="good_example_2">This\'ll also work</string>
<string name="bad_example">This doesn't work</string>
<string name="bad_example_2">XML encodings don&apos;t work</string>
Run Code Online (Sandbox Code Playgroud)

它看起来像bad_example_2描述了你的问题.你最好的选择是模仿Raghav Sood建议分别good_example_2替换'"使用\'\".