XML使用sax解析器java从特定重复标记获取值

时间:2017-07-26 12:54:46

标签: java xml xml-parsing desktop-application

我试图使用sax解析器在我的xml中获取一些信息,

这是:

def

基本上,我想在xml中使用ident标签(),但是问题是我不想把它们全部拿走,我只想拿第一个标识( show ident)我已经试图通过实现布尔值来标记我们在xml元素中的位置来解决这个问题,但我很困惑如何能够停止在第一个身份。

非常感谢您的关注

2 个答案:

答案 0 :(得分:0)

使用从const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); exports.sendPushForHelp = functions.database.ref('/help/school/{id}').onWrite(event => { const payLoad = { notification: { title: 'Someone', body: 'needs help', badge: '1', sound: 'Intruder.mp3' } }; return admin.database().ref('fcmToken').once('value').then(allToken => { if (allToken.val()) { const token = Object.keys(allToken.val()); return admin.messaging().sendToDevice(token, payLoad).then(response => { }); }; }); }); 派生的类。只要您在org.xml.sax.helpers.DefaultHandler方法中找到所需元素,就立即抛出SAXException。这将立即停止SAX解析器。

以下是提供的示例 - Stop a SAX parser when you have enough data

答案 1 :(得分:0)

对于迟到的帖子感到抱歉,对于那些试图解决这个问题的人,除了使用mmit dmitry trifonov方法之外,你们可以在sax中使用Stack方法,你们可以在这里找到sax的堆栈方法文章:http://www.javaworld.com/article/2076202/java-se/mapping-xml-to-java--part-2.html

希望它有所帮助!