StAX return 未知案例

StAX return unknown case

我正在使用 StAX 处理巨大的 xml 文件。如下代码所示,在 switch-case 中有一个默认条件。当我 运行 代码 默认情况下的文本打印如下:

unhandled case4

案例4是什么?我试图 java Stax 的文档,但我找不到它...似乎 XMLStreamConstants.START_ELEMENT 的常量 int 值为 1 XMLStreamConstants.END_ELEMENT 的常量值为 2...但哪一个是 4?

代码:

for (int event = mStAXParser.next(); event != XMLStreamConstants.END_DOCUMENT; event = mStAXParser.next()) {

        switch (event) {
        case XMLStreamConstants.START_ELEMENT:

            Log.d(TAG, "main", "@START_ELEMENT");
            Log.d(TAG, "main", "getLocalName(): "+mStAXParser.getLocalName());
            Log.d(TAG, "main", "getAttributeCount(): "+mStAXParser.getAttributeCount());
            Log.d(TAG, "main", "getAttributeLocalName(): "+mStAXParser.getAttributeLocalName(1));
            Log.d(TAG, "main", "getAttributeValue(): "+mStAXParser.getAttributeValue(0));

            break;

        case XMLStreamConstants.END_ELEMENT:
            Log.d(TAG, "main", "@END_ELEMENT");
            Log.d(TAG, "main", "getLocalName():"+mStAXParser.getLocalName());

            break;

        default:
            Log.wtf(TAG, "main", "unhandled case" + event);
        }
    }

参见https://docs.oracle.com/javase/8/docs/api/constant-values.html#javax.xml.stream.XMLStreamConstants.CHARACTERS,是值为4的字符。