Maison développement back-end Tutoriel XML/RSS Introduction détaillée aux avantages de la conversion de données au format XML

Introduction détaillée aux avantages de la conversion de données au format XML

Mar 04, 2017 pm 05:15 PM

Nous rencontrons souvent des situations où nous devons traiter des données enregistrées ou transférées dans différents formats (des fichiers délimités par des virgules ou des tabulations aux formats plus chargeables), et vous devez répondre à chaque analyseur de format. Cette lacune ralentit le développement et peut conduire à des erreurs. Une solution consiste à convertir les données dans des formats couramment utilisés en documents XML, puis à les enregistrer, les traiter ou les convertir dans d'autres formats.

Un exemple

Il existe désormais de nombreux formats de données qui mettent en œuvre des fonctions de sauvegarde, d'exportation, d'importation et de transfert de données au sein ou entre des logiciels. Les plus courants sont les formats délimités, tels que les formats de données délimités par des virgules ou des tabulations et les formats de données de longueur fixe. Supposons que nous ayons un programme de carnet d'adresses qui fournit des fonctionnalités permettant d'exporter des données dans des formats séparés par des virgules et de longueur fixe.

Au format séparé par des virgules, les virgules sont utilisées pour séparer différents champs dans le même enregistrement de données, comme indiqué dans le listing A. Dans un format de données de longueur fixe, chaque champ de l'enregistrement doit avoir une longueur standard. Le listing B montre un carnet d'adresses au format de longueur fixe.

Création d'un document XML

Maintenant, analysons les données d'entrée et convertissons-les en un document XML. Le document XML (c'est-à-dire org.w3c.dom.Document) est le type de données primitif de l'ensemble du modèle objet de document (DOM) et il permet d'accéder aux données du document.

Vous pouvez créer un document correspondant à vos données en exécutant la méthode buildDocument(InputStream is), comme indiqué dans le listing de codes C. Cette méthode lit le flux de données d'entrée ligne par ligne et l'analyse ligne par ligne selon la grille donnée.

Si vous souhaitez analyser des données au format délimité, vous devez créer une instance de la classe avec le constructeur PlainTextToXmlFormatter(String[ ] colName,String delim), dont le délimiteur peut être n'importe quelle chaîne. Dans le cas d'un format de longueur fixe, vous devez utiliser le deuxième constructeur PlainTextToXmlFormatter(String[ ] colName,int[ ] colLen), qui prend un tableau de longueurs de champ comme paramètre. Dans l'exemple de carnet d'adresses que nous avons donné, la longueur de chaque champ est respectivement de 10, 10, 30 et 10 caractères. Le paramètre colName est un tableau qui stocke les noms des enregistrements de données cibles dans l'exemple que nous avons donné, les noms sont le prénom (firstName), le nom (lastName), l'e-mail et le numéro de téléphone (phone).

Le processus d'analyse réel de conversion des lignes de données en symboles de données est le processus d'exécution de la méthode getStringArray(String read, String delim) ou parseFixedLengthMessage(String read, int[ ] colLen). La valeur de retour est un tableau de chaînes, obtenu en décomposant l'entrée donnée par les deux méthodes ci-dessus. Si le format des données est incorrect, une exception sera levée et l'erreur d'analyse se terminera. Appelez la méthode setSkipError(true) pour ignorer l'exception et terminer le processus d'analyse des données. L’appel de cette méthode empêche la levée de l’exception, mais permet toujours au programme d’imprimer les informations d’erreur dans le flux de sortie d’erreur.

Lorsque les lignes sont analysées en balises, elles sont ajoutées au document XML en tant qu'éléments du document XML. Chaque ligne d'enregistrements placée dans l'élément possède une ligne de nom par défaut. Vous pouvez également appeler setDataLineName() pour spécifier un nom. Chaque enregistrement de données est un élément de colonne, le nom de l'élément de colonne est fourni par le constructeur de classe correspondant et les éléments enfants sont ajoutés à l'élément de ligne.

Une fois les données d'entrée entièrement lues, vous disposez d'un document XML valide que vous pouvez poursuivre le traitement. Désormais, puisque les données sont organisées selon la structure arborescente bien connue, leur utilisation est très simple. Par exemple, vous pouvez envoyer ce document à un tiers. Tant que le tiers connaît la définition du type de document (Document Type Definition, DTD) du document, il peut alors facilement traiter le document. Vous pouvez également appeler la méthode writeDocument(Document doc, OutputStream osOut) pour enregistrer ce document. Le listing de codes D donne un exemple d'enregistrement d'un document XML dans un fichier.

Utilisez la transformation XSLT pour afficher les données

Vous pouvez également convertir des données XML dans d'autres formats et utiliser différentes vues pour représenter leur contenu. La méthode la plus simple consiste à utiliser la transformation XSLT, qui fournit une puissante implémentation de langage de transformation orientée arborescence capable de transformer des instances XML utilisant un vocabulaire en texte simple, HTML ou XML utilisant d'autres vocabulaires.

Pour une entrée XML donnée, vous pouvez utiliser le langage XSLT pour créer la sortie souhaitée. Par exemple, vous pouvez convertir des données XML en document HTML en exécutant transformData(InputStream xmlIn, InputStream xslIn, OutputStream transfOut). Le listing E fournit un exemple de transformation XSLT, tandis que le listing F donne une vue HTML d'une entrée du carnet d'adresses.

Simplifiez la gestion des données

Dans cet article, nous avons appris comment convertir des données de format couramment utilisées en documents XML en analysant la classe PlainTextToXmlFormatter. Nous avons également vu comment représenter des documents XML dans différentes vues à l'aide de transformations XSLT. Lorsque vous devez traiter des données dans différents formats, l'adoption de la technologie ci-dessus peut être une bonne solution, vous faisant ainsi gagner un temps précieux et réduisant les risques d'erreurs.

Ce qui précède est une introduction détaillée aux avantages de la conversion des données au format XML. Pour plus de contenu connexe, veuillez prêter attention au site Web PHP chinois (www.php.cn) !


Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Utilisez ddrescue pour récupérer des données sous Linux Utilisez ddrescue pour récupérer des données sous Linux Mar 20, 2024 pm 01:37 PM

DDREASE est un outil permettant de récupérer des données à partir de périphériques de fichiers ou de blocs tels que des disques durs, des SSD, des disques RAM, des CD, des DVD et des périphériques de stockage USB. Il copie les données d'un périphérique bloc à un autre, laissant derrière lui les blocs corrompus et ne déplaçant que les bons blocs. ddreasue est un puissant outil de récupération entièrement automatisé car il ne nécessite aucune interruption pendant les opérations de récupération. De plus, grâce au fichier map ddasue, il peut être arrêté et repris à tout moment. Les autres fonctionnalités clés de DDREASE sont les suivantes : Il n'écrase pas les données récupérées mais comble les lacunes en cas de récupération itérative. Cependant, il peut être tronqué si l'outil est invité à le faire explicitement. Récupérer les données de plusieurs fichiers ou blocs en un seul

Open source! Au-delà de ZoeDepth ! DepthFM : estimation rapide et précise de la profondeur monoculaire ! Open source! Au-delà de ZoeDepth ! DepthFM : estimation rapide et précise de la profondeur monoculaire ! Apr 03, 2024 pm 12:04 PM

0. À quoi sert cet article ? Nous proposons DepthFM : un modèle d'estimation de profondeur monoculaire génératif de pointe, polyvalent et rapide. En plus des tâches traditionnelles d'estimation de la profondeur, DepthFM démontre également des capacités de pointe dans les tâches en aval telles que l'inpainting en profondeur. DepthFM est efficace et peut synthétiser des cartes de profondeur en quelques étapes d'inférence. Lisons ce travail ensemble ~ 1. Titre des informations sur l'article : DepthFM : FastMonocularDepthEstimationwithFlowMatching Auteur : MingGui, JohannesS.Fischer, UlrichPrestel, PingchuanMa, Dmytr

Google est ravi : les performances de JAX surpassent Pytorch et TensorFlow ! Cela pourrait devenir le choix le plus rapide pour la formation à l'inférence GPU Google est ravi : les performances de JAX surpassent Pytorch et TensorFlow ! Cela pourrait devenir le choix le plus rapide pour la formation à l'inférence GPU Apr 01, 2024 pm 07:46 PM

Les performances de JAX, promu par Google, ont dépassé celles de Pytorch et TensorFlow lors de récents tests de référence, se classant au premier rang sur 7 indicateurs. Et le test n’a pas été fait sur le TPU présentant les meilleures performances JAX. Bien que parmi les développeurs, Pytorch soit toujours plus populaire que Tensorflow. Mais à l’avenir, des modèles plus volumineux seront peut-être formés et exécutés sur la base de la plate-forme JAX. Modèles Récemment, l'équipe Keras a comparé trois backends (TensorFlow, JAX, PyTorch) avec l'implémentation native de PyTorch et Keras2 avec TensorFlow. Premièrement, ils sélectionnent un ensemble de

Vitesse Internet lente des données cellulaires sur iPhone : correctifs Vitesse Internet lente des données cellulaires sur iPhone : correctifs May 03, 2024 pm 09:01 PM

Vous êtes confronté à un décalage et à une connexion de données mobile lente sur iPhone ? En règle générale, la puissance de l'Internet cellulaire sur votre téléphone dépend de plusieurs facteurs tels que la région, le type de réseau cellulaire, le type d'itinérance, etc. Vous pouvez prendre certaines mesures pour obtenir une connexion Internet cellulaire plus rapide et plus fiable. Correctif 1 – Forcer le redémarrage de l'iPhone Parfois, le redémarrage forcé de votre appareil réinitialise simplement beaucoup de choses, y compris la connexion cellulaire. Étape 1 – Appuyez simplement une fois sur la touche d’augmentation du volume et relâchez-la. Ensuite, appuyez sur la touche de réduction du volume et relâchez-la à nouveau. Étape 2 – La partie suivante du processus consiste à maintenir le bouton sur le côté droit. Laissez l'iPhone finir de redémarrer. Activez les données cellulaires et vérifiez la vitesse du réseau. Vérifiez à nouveau Correctif 2 – Changer le mode de données Bien que la 5G offre de meilleures vitesses de réseau, elle fonctionne mieux lorsque le signal est plus faible

La vitalité de la super intelligence s'éveille ! Mais avec l'arrivée de l'IA qui se met à jour automatiquement, les mères n'ont plus à se soucier des goulots d'étranglement des données. La vitalité de la super intelligence s'éveille ! Mais avec l'arrivée de l'IA qui se met à jour automatiquement, les mères n'ont plus à se soucier des goulots d'étranglement des données. Apr 29, 2024 pm 06:55 PM

Je pleure à mort. Le monde construit à la folie de grands modèles. Les données sur Internet ne suffisent pas du tout. Le modèle de formation ressemble à « The Hunger Games », et les chercheurs en IA du monde entier se demandent comment nourrir ces personnes avides de données. Ce problème est particulièrement important dans les tâches multimodales. À une époque où rien ne pouvait être fait, une équipe de start-up du département de l'Université Renmin de Chine a utilisé son propre nouveau modèle pour devenir la première en Chine à faire de « l'auto-alimentation des données générées par le modèle » une réalité. De plus, il s’agit d’une approche à deux volets, du côté compréhension et du côté génération, les deux côtés peuvent générer de nouvelles données multimodales de haute qualité et fournir un retour de données au modèle lui-même. Qu'est-ce qu'un modèle ? Awaker 1.0, un grand modèle multimodal qui vient d'apparaître sur le Forum Zhongguancun. Qui est l'équipe ? Moteur Sophon. Fondé par Gao Yizhao, doctorant à la Hillhouse School of Artificial Intelligence de l’Université Renmin.

Les robots Tesla travaillent dans les usines, Musk : Le degré de liberté des mains atteindra 22 cette année ! Les robots Tesla travaillent dans les usines, Musk : Le degré de liberté des mains atteindra 22 cette année ! May 06, 2024 pm 04:13 PM

La dernière vidéo du robot Optimus de Tesla est sortie, et il peut déjà fonctionner en usine. À vitesse normale, il trie les batteries (les batteries 4680 de Tesla) comme ceci : Le responsable a également publié à quoi cela ressemble à une vitesse 20 fois supérieure - sur un petit "poste de travail", en sélectionnant et en sélectionnant et en sélectionnant : Cette fois, il est publié L'un des points forts de la vidéo est qu'Optimus réalise ce travail en usine, de manière totalement autonome, sans intervention humaine tout au long du processus. Et du point de vue d'Optimus, il peut également récupérer et placer la batterie tordue, en se concentrant sur la correction automatique des erreurs : concernant la main d'Optimus, le scientifique de NVIDIA Jim Fan a donné une évaluation élevée : la main d'Optimus est l'un des robots à cinq doigts du monde. le plus adroit. Ses mains ne sont pas seulement tactiles

Le premier robot capable d'accomplir de manière autonome des tâches humaines apparaît, avec cinq doigts flexibles et rapides, et de grands modèles prennent en charge l'entraînement dans l'espace virtuel Le premier robot capable d'accomplir de manière autonome des tâches humaines apparaît, avec cinq doigts flexibles et rapides, et de grands modèles prennent en charge l'entraînement dans l'espace virtuel Mar 11, 2024 pm 12:10 PM

Cette semaine, FigureAI, une entreprise de robotique investie par OpenAI, Microsoft, Bezos et Nvidia, a annoncé avoir reçu près de 700 millions de dollars de financement et prévoit de développer un robot humanoïde capable de marcher de manière autonome au cours de la prochaine année. Et l’Optimus Prime de Tesla a reçu à plusieurs reprises de bonnes nouvelles. Personne ne doute que cette année sera celle de l’explosion des robots humanoïdes. SanctuaryAI, une entreprise canadienne de robotique, a récemment lancé un nouveau robot humanoïde, Phoenix. Les responsables affirment qu’il peut accomplir de nombreuses tâches de manière autonome, à la même vitesse que les humains. Pheonix, le premier robot au monde capable d'accomplir des tâches de manière autonome à la vitesse d'un humain, peut saisir, déplacer et placer avec élégance chaque objet sur ses côtés gauche et droit. Il peut identifier des objets de manière autonome

L'US Air Force présente son premier avion de combat IA de grande envergure ! Le ministre a personnellement effectué l'essai routier sans intervenir pendant tout le processus, et 100 000 lignes de code ont été testées 21 fois. L'US Air Force présente son premier avion de combat IA de grande envergure ! Le ministre a personnellement effectué l'essai routier sans intervenir pendant tout le processus, et 100 000 lignes de code ont été testées 21 fois. May 07, 2024 pm 05:00 PM

Récemment, le milieu militaire a été submergé par la nouvelle : les avions de combat militaires américains peuvent désormais mener des combats aériens entièrement automatiques grâce à l'IA. Oui, tout récemment, l’avion de combat IA de l’armée américaine a été rendu public pour la première fois, dévoilant ainsi son mystère. Le nom complet de ce chasseur est Variable Stability Simulator Test Aircraft (VISTA). Il a été personnellement piloté par le secrétaire de l'US Air Force pour simuler une bataille aérienne en tête-à-tête. Le 2 mai, le secrétaire de l'US Air Force, Frank Kendall, a décollé à bord d'un X-62AVISTA à la base aérienne d'Edwards. Notez que pendant le vol d'une heure, toutes les actions de vol ont été effectuées de manière autonome par l'IA ! Kendall a déclaré : "Au cours des dernières décennies, nous avons réfléchi au potentiel illimité du combat air-air autonome, mais cela a toujours semblé hors de portée." Mais maintenant,

See all articles