IXmlPullParser Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations).
[Android.Runtime.Register("org/xmlpull/v1/XmlPullParser", "", "Org.XmlPull.V1.IXmlPullParserInvoker")]
public interface IXmlPullParser : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("org/xmlpull/v1/XmlPullParser", "", "Org.XmlPull.V1.IXmlPullParserInvoker")>]
type IXmlPullParser = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Dérivé
- Attributs
- Implémente
Remarques
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations).
Il existe différents types d’analyseurs suivants en fonction des caractéristiques définies :<ul><li b><>non validateing</b> parser tel que défini dans la spécification XML 1.0 lorsque FEATURE_PROCESS_DOCDECL est défini sur true <li b><validateing parser>/b< tel que défini dans la spécification XML 1.0 lorsque FEATURE_VALIDATION a la valeur true (et cela implique que FEATURE_PROCESS_DOCDECL est vrai) >li<>lorsque FEATURE_PROCESS_DOCDECL a la valeur false (il s’agit d’une valeur par défaut et si une valeur différente est nécessaire doit être modifiée avant le démarrage de l’analyse), l’analyseur se comporte comme xml 1.0 conforme à l’analyseur non validant sous condition qu’aucun <>DOCDECL n’est présent</em> dans les documents XML (les entites internes peuvent toujours être définis avec defineEntityReplacementText()). Ce mode d’opération est destiné <à être>utilisé dans des environnements contraints</b> tels que J2ME. </ul>
Il existe deux méthodes clés : next() et nextToken(). Tandis que next() fournit l’accès aux événements d’analyse de haut niveau, nextToken() autorise l’accès aux jetons de niveau inférieur.
L’état d’événement actuel de l’analyseur peut être déterminé en appelant la méthode getEventType(). Initialement, l’analyseur est dans l’état START_DOCUMENT.
La méthode next() avance l’analyseur vers l’événement suivant. La valeur int retournée par la suite détermine l’état de l’analyseur actuel et est identique à la valeur retournée par les appels suivants à getEventType ().
Les types d’événements suivants sont vus par next()<dl><dt>START_TAG<balise de> début XML lue. <dt>TEXT dd< Text>content was read ; the text content can be retrieved using the getText(). (lors de la validation du mode suivant() ne signale pas d’espace blanc ignorable, utilisez nextToken() à la place) <dt>END_TAG<dd> Une balise de fin a été lue <dt>END_DOCUMENT<dd> Aucun autre événement n’est disponible </dl>
une fois que la première méthode next() ou nextToken() (ou toute autre méthode next*() est appelée application utilisateur peut obtenir une version XML, une version autonome et un encodage à partir de la déclaration XML de la manière suivante :<ul><li><b>version</b> : getProperty("http://xmlpull.org/v1/doc/properties.html#xmldecl-version") renvoie la chaîne (« 1.0 ») ou null si XMLDecl n’a pas été lu ou si la propriété n’est pas prise en charge <li><b>autonome</b> : getProperty( »http://xmlpull.org/v1/doc/properties.html#xmldecl-standalone") renvoie booléen : null s’il n’y a pas de déclaration autonome ou si la propriété n’est pas prise en charge sinon retourne Boolean(true) si standalone="yes » et Boolean(false) quand standalone="no » li b encoding</b>< : obtenu à partir de getInputEncoding() null si le flux avait un encodage inconnu (non défini dans setInputStream) et qu’il n’a pas été déclaré dans XMLDecl ></ul><>
Un exemple minimal d’utilisation de cette API peut se présenter comme suit :
import java.io.IOException;
import java.io.StringReader;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.<a href="XmlPullParserException.html">XmlPullParserException</a>;
import org.xmlpull.v1.<a href="XmlPullParserFactory.html">XmlPullParserFactory</a>;
public class SimpleXmlPullApp
{
public static void main (String args[])
throws XmlPullParserException, IOException
{
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
xpp.<a href="#setInput">setInput</a>( new StringReader ( "<foo>Hello World!</foo>" ) );
int eventType = xpp.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
if(eventType == XmlPullParser.START_DOCUMENT) {
System.out.println("Start document");
} else if(eventType == XmlPullParser.START_TAG) {
System.out.println("Start tag "+xpp.<a href="#getName()">getName()</a>);
} else if(eventType == XmlPullParser.END_TAG) {
System.out.println("End tag "+xpp.getName());
} else if(eventType == XmlPullParser.TEXT) {
System.out.println("Text "+xpp.<a href="#getText()">getText()</a>);
}
eventType = xpp.next();
}
System.out.println("End document");
}
}
L’exemple ci-dessus génère la sortie suivante :
Start document
Start tag foo
Text Hello World!
End tag foo
End document
Pour plus d’informations sur l’utilisation de l’API, reportez-vous à la présentation rapide disponible à l’adresse http://www.xmlpull.org
Java documentation pour org.xmlpull.v1.XmlPullParser.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
Champs
| Nom | Description |
|---|---|
| FeatureProcessDocdecl |
Cette fonctionnalité détermine si la déclaration de document est traitée. |
| FeatureProcessNamespaces |
Cette fonctionnalité détermine si l’analyseur traite les espaces de noms. |
| FeatureReportNamespaceAttributes |
Cette fonctionnalité détermine si les attributs d’espace de noms sont exposés via les méthodes d’accès aux attributs. |
| FeatureValidation |
Si cette fonctionnalité est activée, toutes les erreurs de validation définies dans le code XML 1 sont activées. |
| NoNamespace |
Cette constante représente l’espace de noms par défaut (chaîne vide « ») |
Propriétés
| Nom | Description |
|---|---|
| AttributeCount |
Retourne le nombre d’attributs de la balise de début actuelle ou -1 si le type d’événement actuel n’est pas START_TAG |
| ColumnNumber |
Retourne le numéro de colonne actuel. Les implémentations peuvent utiliser différentes bases ; XmlReaderPullParser retourne un numéro de colonne de base zéro. |
| Depth |
Retourne la profondeur actuelle de l’élément. |
| EventType |
Retourne le type de l’événement actuel (START_TAG, END_TAG, TEXT, etc. |
| Handle |
Obtient la valeur JNI de l’objet Android sous-jacent. (Hérité de IJavaObject) |
| InputEncoding |
Retourne l’encodage d’entrée s’il est connu, null sinon. |
| IsEmptyElementTag |
Retourne true si l’événement actuel est START_TAG et que la balise est dégénérée (par exemple <, foobar/>). |
| IsWhitespace |
Vérifie si l’événement TEXT actuel contient uniquement des caractères d’espace blanc. |
| JniIdentityHashCode |
Retourne la valeur de |
| JniManagedPeerState |
État de l’homologue managé. (Hérité de IJavaPeerable) |
| JniObjectReferenceControlBlock |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). (Hérité de IJavaPeerable) |
| JniPeerMembers |
Prise en charge de l’accès aux membres et de l’appel. (Hérité de IJavaPeerable) |
| LineNumber |
Retourne le numéro de ligne actuel, à partir de 1. |
| Name |
Pour les événements START_TAG ou END_TAG, le nom (local) de l’élément actuel est retourné lorsque les espaces de noms sont activés. |
| Namespace |
Retourne l’URI d’espace de noms de l’élément actuel. |
| PeerReference |
Retourne une JniObjectReference instance d’objet Java encapsulée. (Hérité de IJavaPeerable) |
| PositionDescription |
Retourne un texte court décrivant l’état actuel de l’analyseur, y compris la position, une description de l’événement actuel et la source de données si elle est connue. |
| Prefix |
Retourne le préfixe de l’élément actuel. |
| Text |
Retourne le contenu du texte de l’événement actuel sous forme de chaîne. |
| Types |
Ce tableau peut être utilisé pour convertir les constantes entières de type d’événement telles que START_TAG ou TEXT en chaîne. |
Méthodes
| Nom | Description |
|---|---|
| DefineEntityReplacementText(String, String) |
Définissez une nouvelle valeur pour le texte de remplacement d’entité tel que défini dans la section XML 1.0 Section 4.5 Construction du texte de remplacement d’entité interne. |
| Disposed() |
Appelé lorsque l’instance a été supprimée. (Hérité de IJavaPeerable) |
| DisposeUnlessReferenced() |
S’il n’existe aucune référence en suspens à cette instance, les appels |
| Finalized() |
Appelé lorsque l’instance a été finalisée. (Hérité de IJavaPeerable) |
| GetAttributeName(Int32) |
Retourne le nom local de l’attribut spécifié si les espaces de noms sont activés ou simplement le nom de l’attribut si les espaces de noms sont désactivés. |
| GetAttributeNamespace(Int32) |
Retourne l’URI d’espace de noms de l’attribut avec l’index donné (commence à partir de 0). |
| GetAttributePrefix(Int32) |
Retourne le préfixe de l’attribut spécifié Renvoie null si l’élément n’a pas de préfixe. |
| GetAttributeType(Int32) |
Retourne le type de l’attribut spécifié Si l’analyseur n’est pas validé, il DOIT retourner CDATA. |
| GetAttributeValue(Int32) |
Retourne la valeur des attributs donnés. |
| GetAttributeValue(String, String) |
Retourne la valeur des attributs identifiés par l’URI d’espace de noms et l’espace de noms localName. |
| GetFeature(String) |
Retourne la valeur actuelle de la fonctionnalité donnée. |
| GetNamespace(String) |
Retourne l’URI correspondant au préfixe donné, en fonction de l’état actuel de l’analyseur. |
| GetNamespaceCount(Int32) |
Retourne le nombre d’éléments dans la pile d’espaces de noms pour la profondeur donnée. |
| GetNamespacePrefix(Int32) |
Retourne le préfixe d’espace de noms pour la position donnée dans la pile d’espaces de noms. |
| GetNamespaceUri(Int32) |
Retourne l’URI de l’espace de noms pour la position donnée dans la pile d’espaces de noms Si la position est hors plage, une exception est levée. |
| GetProperty(String) |
Recherchez la valeur d’une propriété. |
| GetTextCharacters(Int32[]) |
Retourne la mémoire tampon qui contient le texte de l’événement actuel, ainsi que le décalage de début et la longueur pertinents pour l’événement actuel. |
| IsAttributeDefault(Int32) |
Retourne si l’attribut spécifié n’était pas dans l’entrée a été déclaré en XML. |
| Next() |
Obtenir l’événement d’analyse suivant : le contenu de l’élément sera regroupé et un seul événement TEXT doit être retourné pour tout le contenu de l’élément (les commentaires et les instructions de traitement seront ignorés et les références d’entité doivent être développées ou l’exception doit être levée si la référence d’entité ne peut pas être développée). |
| NextTag() |
Appelez next() et renvoyez l’événement s’il est START_TAG ou END_TAG sinon lever une exception. |
| NextText() |
Si l’événement actuel est START_TAG, si l’élément suivant est TEXT, le contenu de l’élément est retourné ou si l’événement suivant est END_TAG alors la chaîne vide est retournée, sinon l’exception est levée. |
| NextToken() |
Cette méthode fonctionne de la même façon que next(), mais expose des types d’événements supplémentaires (COMMENT, CDSECT, DOCDECL, ENTITY_REF, PROCESSING_INSTRUCTION ou IGNORABLE_WHITESPACE) s’ils sont disponibles en entrée. |
| Require(XmlPullParserNode, String, String) |
Testez si l’événement actuel est du type donné et si l’espace de noms et le nom correspondent. |
| SetFeature(String, Boolean) |
Utilisez cet appel pour modifier le comportement général de l’analyseur, tel que le traitement de l’espace de noms ou la gestion des déclarations doctype. |
| SetInput(Reader) |
Définissez la source d’entrée pour l’analyseur sur le lecteur donné et réinitialise l’analyseur. |
| SetInput(Stream, String) |
Définit le flux d’entrée que l’analyseur va traiter. |
| SetJniIdentityHashCode(Int32) |
Définissez la valeur retournée par |
| SetJniManagedPeerState(JniManagedPeerStates) |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). (Hérité de IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
Définissez la valeur retournée par |
| SetProperty(String, Object) |
Définissez la valeur d’une propriété. |
| UnregisterFromRuntime() |
Annulez l’inscription de cette instance afin que le runtime ne le retourne pas à partir d’appels futurs Java.Interop.JniRuntime+JniValueManager.PeekValue . (Hérité de IJavaPeerable) |
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). |
| NextAsync(IXmlPullParser) |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). |
| NextTagAsync(IXmlPullParser) |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). |
| NextTextAsync(IXmlPullParser) |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). |
| NextTokenAsync(IXmlPullParser) |
Xml Pull Parser est une interface qui définit les fonctionnalités d’analyse fournies dans l’API XMLPULL V1 (visitez ce site web pour en savoir plus sur l’API et ses implémentations). |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |