【问题标题】:Error:(218) Apostrophe not preceded by \错误:(218)撇号前面没有\
【发布时间】:2026-02-19 14:45:01
【问题描述】:

在我的 strings.xml 中,我创建了一个包含 (it's) 的字符串,但出现此错误。

错误:(218) 撇号前面没有 \

是的,我知道我必须在撇号之前放置一个 \,或者只是删除撇号,但我的问题是,当我使用 (it\s) 运行应用程序或只是删除它时,它又回来了;即使我删除了整个字符串,当我点击运行时它都会回来。我该如何阻止这种情况?

这是字符串,但它真的没关系。我只想在我运行应用程序时将其删除而不是恢复。

<string> name="talk" So, you want these things? LOL its gonna</string>

【问题讨论】:

  • it comes back 是什么意思?是否有人或某物在您不知情的情况下操纵了您的文件?
  • 没关系,我没有细心,请原谅我是编程新手,它向我显示了 values.xml 中的错误,以为我在 string.xml 中,一旦我修复它转到正确的文件。
  • John Westlen 将此作为答案,我会投票赞成,这是我问题的确切解决方案。

标签: android xml string


【解决方案1】:

当错误发生时,Android Studio 会打开 values.xml,在该文件中,该文件看起来与您的 strings.xml 完全相同。确保您正在更新 strings.xml,您应该一切顺利。

【讨论】:

    【解决方案2】:

    其实有两个文件strings.xml和values.xml

    我们在strings.xml中编辑我们的字符串数据,每当我们得到像撇号之前没有\的错误时,当你点击错误时android studio将你重定向到values.xml,你正在values.xml和android studio中编辑删除了您编辑的内容。

    所以请确保您编辑的是 strings.xml 而不是 values.xml

    【讨论】:

      【解决方案3】:

      将您的字符串放在双引号中。&lt;string&gt;"Your text 'here'"&lt;/string&gt;

      【讨论】:

        【解决方案4】:

        试试

        <string name="talk">your string value</string>
        

        【讨论】: