Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Récupérer le contenu d'un javax.swing.text.Document comme XML

3 réponses
Avatar
Thomas Baruchel
Bonjour,

j'utilise des JEditorPane avec un DefaultStyledEditorKit pour saisir un
document qui doit
ensuite être enregistré sous la forme d'un XML. Ces composants semblent
s'y prêter
particulièrement bien, ainsi que l'indique d'ailleurs la notice de
javax.swing.text.Document. Mais je m'étonne de ne pas trouver des méthodes
plus
directes; faut-il que je refasse tout par moi-même à partir des
getCharacterElement()
et autres ?

Très précisément, j'utilise la classe:
javax.swing.text.DefaultStyledDocument
et j'aimerais savoir ce qu'il y a de plus rapide pour obtenir un premier
XML
copiant fidèlement (tel quel) le contenu de mon JEditorPane.

Cordialement,

--
Thomas Baruchel
To contact me, please, see at:
http://cerbermail.com/?OEyHGNQFEa

3 réponses

Avatar
Isammoc
Thomas Baruchel <NOSPAM> écrivait news::

Bonjour,


De meme!

j'utilise des JEditorPane avec un DefaultStyledEditorKit pour saisir
un document qui doit
ensuite être enregistré sous la forme d'un XML. Ces composants
semblent s'y prêter
particulièrement bien, ainsi que l'indique d'ailleurs la notice de
javax.swing.text.Document. Mais je m'étonne de ne pas trouver des
méthodes plus
directes; faut-il que je refasse tout par moi-même à partir des
getCharacterElement()
et autres ?

Très précisément, j'utilise la classe:
javax.swing.text.DefaultStyledDocument
et j'aimerais savoir ce qu'il y a de plus rapide pour obtenir un
premier XML
copiant fidèlement (tel quel) le contenu de mon JEditorPane.

Cordialement,



Je ne sais pas si c'est que tu recherches, mais pour du XML, autant
utiliser les outils appropriés:

SAX
JAXP
DOM
JDOM
Xerces


Bien à vous,
Isammoc

Avatar
Eric Frigot
Thomas Baruchel wrote:
Bonjour,

j'utilise des JEditorPane avec un DefaultStyledEditorKit pour saisir un
document qui doit
ensuite être enregistré sous la forme d'un XML. Ces composants semblent
s'y prêter
particulièrement bien, ainsi que l'indique d'ailleurs la notice de
javax.swing.text.Document. Mais je m'étonne de ne pas trouver des
méthodes plus
directes; faut-il que je refasse tout par moi-même à partir des
getCharacterElement()
et autres ?

Très précisément, j'utilise la classe:
javax.swing.text.DefaultStyledDocument
et j'aimerais savoir ce qu'il y a de plus rapide pour obtenir un premier
XML
copiant fidèlement (tel quel) le contenu de mon JEditorPane.

Cordialement,



salut,

tout dépend de ce que tu veux en faire, tu peux effectivement voir du
coté de SAX, DOM...

déjà, tu récupères ton text avec un
String docString = doc.getText(0, doc.getLength());

Ensuite, tu peux regarder cette page pour parser dont document avec un
handler SAX (de manière évenementielle) ou construire une représentation
arborescente avec DOM :

http://perso.wanadoo.fr/jm.doudoux/java/tutorial/chap031.htm#chap_31_4

Pour DOM

try {
factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
document = builder.parse(new StringBufferInputStream(docString));
} catch (Exception e) {
e.printStackTrace();
}

Bon courage.

Avatar
Thomas Baruchel
Je ne sais pas si c'est que tu recherches, mais pour du XML, autant
utiliser les outils appropriés:


Merci, mais je crois m'être mal fait comprendre; en fait, je chercher à
récupérer les Element de javax.swing.text pour en faire un XML. Voir
la méthode dump() de javax.swing.text.DefaultStyledDocument pour comprendre
ce que je veux faire, mais je pense le faire à la main avec
getRootElements.

Cordialement,

--
Thomas Baruchel
To contact me, please, see at:
http://cerbermail.com/?OEyHGNQFEa