错误:解析XML时出错:格式不正确(令牌无效)......?

时间:2011-08-17 08:19:20

标签: android xml android-xml

我正在使用以下XML处理应用程序。但是当我尝试清理/构建我的项目时,会发生以下错误:

“错误:解析XML时出错:格式不正确(令牌无效)”

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView  
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:text="@string/hello";
/>
</LinearLayout>

这可能是什么意思?

10 个答案:

答案 0 :(得分:35)

这意味着您的XML文件中存在编译错误,这不应该存在:拼写错误/虚假字符/错误的命名空间。

你的问题是你有一个分号,不应该在这一行之后出现:

  android:text="@string/hello";

答案 1 :(得分:33)

我遇到了这个问题,当我有android:text="< Go back"时,它有正确的语法高亮显示,但后来我意识到它是<符号,它搞乱了一切。

答案 2 :(得分:8)

确认

之前没有任何空格或标签
<?xml version="1.0" encoding="utf-8"?>

还可以在eclipse中刷新和清理你的项目。

我偶尔会收到此错误,上述建议会在99%的时间内解决问题

答案 3 :(得分:7)

我有同样的问题。您不能在文本属性中使用左<箭头,例如xml文件中的android:text="< Go to back"。从xml代码中删除任何<箭头。

希望它会帮助你。使用

答案 4 :(得分:3)

要解决这个问题,我将布局粘贴到https://www.xmlvalidation.com/,它告诉我错误是什么。与其他答案的情况一样,我的XML在字符串中有<

答案 5 :(得分:2)

你好后删除分号

答案 6 :(得分:0)

就我而言,我忘了结束ConstrainLayout

</android.support.constraint.ConstraintLayout>

此后,一切开始正常运行。

答案 7 :(得分:0)

我有同样的问题。就我而言,尽管我不明白为什么,但是问题是由于以下元素之一中的&引起的,其中ab是两个标记/单词:

<s> . . . a & b . . . </s>

为解决该问题,我将元素的文本更改为以下内容:

<s> . . . a and b . . . </s>

虽然某些人可能会遇到这种情况。通常,为了使您的生活更轻松,只需去阅读错误消息(line:..., col:...)中提到的索引处的字符并查看字符是什么。

答案 8 :(得分:0)

问题是您在 XML布局文件中做错了事

return Stack(
  children: [
    // Green Background
    Container(
      height: 400,
      decoration: BoxDecoration(
        color: Colors.green,
      ),
    ),

    // Circle
    Positioned(
      right: -50,
      top: -50,
      child: Container(
        height: 300,
        width: 300,
        decoration: BoxDecoration(
          shape: BoxShape.circle,
          color: Colors.black12,
        ),
      ),
    ),

    Positioned(
      top: 20,
      right: 20,
      left: 20,
      child: Column(
        crossAxisAlignment: CrossAxisAlignment.start,
        children: [
          Row(
            children: [
              Expanded(
                  child: TextFormField(
                decoration: InputDecoration(
                  filled: true,
                  hintText: 'Search for products',
                ),
              )),
              IconButton(icon: Icon(Icons.search), onPressed: () {}),
            ],
          ),
          Container(
            margin: const EdgeInsets.only(top: 40),
            child: Row(
              mainAxisAlignment: MainAxisAlignment.spaceBetween,
              children: [
                Expanded(
                  child: Text('BANANA 5% OFF',
                      style: const TextStyle(
                        fontWeight: FontWeight.bold,
                        fontSize: 30,
                      ),),
                ),
                Expanded(
                  child: Container(
                    height: 150,
                    width: 150,
                    color: Colors.white10,
                    alignment: Alignment.center,
                    child: Text('Image'),
                  ),
                ),
              ],
            ),
          ),
        ],
      ),
    ),
  ],
);

答案 9 :(得分:-1)

我尽一切努力,最后得到了以下结果。

我的第一行是:

<?xmlversion="1.0"encoding="utf-8"?>

我在那里缺少两个空格,应该是:

<?xml version="1.0" encoding="utf-8"?>

在版本之前和编码之前应该有一个空格。