Here you can find the source of getPIData(XmlPullParser pp)
[16] PI ::= '<?'
License
Open Source License
Declaration
public static String getPIData(XmlPullParser pp)
throws IllegalStateException
Method Source Code
//package com.java2s;
// for license please see accompanying LICENSE.txt file (available also at http://www.xmlpull.org/)
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
public class Main {
/**// www . j av a 2s . com
* Return everything past PITarget and S from Processing Instruction (PI) as defined in
* XML 1.0 Section 2.6 Processing Instructions
* <code>[16] PI ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>'</code>
*
* <p><b>NOTE:</b> if there is no PI data it returns empty string.
*/
public static String getPIData(XmlPullParser pp)
throws IllegalStateException {
int eventType;
try {
eventType = pp.getEventType();
} catch (XmlPullParserException ex) {
// should never happen ...
throw new IllegalStateException(
"could not determine parser state: " + ex
+ pp.getPositionDescription());
}
if (eventType != XmlPullParser.PROCESSING_INSTRUCTION) {
throw new IllegalStateException(
"parser must be on processing instruction and not "
+ XmlPullParser.TYPES[eventType]
+ pp.getPositionDescription());
}
final String PI = pp.getText();
int pos = -1;
for (int i = 0; i < PI.length(); i++) {
if (isS(PI.charAt(i))) {
pos = i;
} else if (pos > 0) {
return PI.substring(i);
}
}
return "";
}
/**
* Return true if chacters is S as defined in XML 1.0
* <code>S ::= (#x20 | #x9 | #xD | #xA)+</code>
*/
private static boolean isS(char ch) {
return (ch == ' ' || ch == '\n' || ch == '\r' || ch == '\t');
}
}
Related
- getAttributeValue(XmlPullParser pp, String name)
- getAttributeValue(XmlPullParser pp, String name)
- getAttributes( XmlPullParser pullParser)
- getAttributes( XmlPullParser pullParser, String namespace, String elementName, String attributeName, String attributeValue)
- getPIData(XmlPullParser pp)
- getPITarget(XmlPullParser pp)
- getPITarget(XmlPullParser pp)
- getRequiredAttributeValue(XmlPullParser pp, String namespace, String name)
- getRequiredAttributeValue(XmlPullParser pp, String namespace, String name)