|
|
|
|
Je connais pas trop XML mais ce qui est sur c'est que tu peux le faire comme pour ecrire d'autres fichiers... Peut etre existe-t-il des trucs pour se simplifier la tache mais je suis pas vraiment sur...
Proverbe Thaïlandais:Pingouins dans les champs,
hiver très méchant. |
je te conseille de lancer un coup d'oeil aux fonctionnalités qu'offre l'API JDOM. C'est très simple à manipuler et rend la vie facile quand à la gestion des documents XML sous Java
Pour te restreindre les choses : tapes ceci sur Google Simplifier la programmation XML avec JDOM c'est le titre d'un article qui pourrait t'aider; mais j'ai pas le lien du site. @+ |
Salut, est ce que tu as réussi à écrire dans un fichier XML? Moi je ne vois pas trop comment faire surtout au niveau du code. Si tu peux me montrer des sources ca m'aiderai beaucoup. Merci
|
Oui merci mais j'avais déja regardé. Mais le problème c'est que j'y connais vraiment rien, du moins je ne sais pas comment commencé! |
Bonjour à tous ;
Il y a plusieurs methode pour créer un document xml. Les parseurs SAX et DOM sont tres utilisés; JAVA a donc profiter et combiner les forces de ces deux parseurs pour mettre en place un API speciale qui permet de gerer les fichiers XML qui est JDOM. Voici un bout de code qui permet de créer un fichier XML avec JDOM : try{ //l'element root du document xml Element root = new Element("etudiants"); Document doc = new Document(root); //un noeud etudiant Element node1 = new Element("etudiant"); node1.setAttribute("prenom","titi" ); node1.setAttribute("nom", "nomtiti"); Element node2 = new Element("etudiant"); node2.setAttribute("prenom","toto" ); node2.setAttribute("nom", "nomtoto"); .... .... root.addContent(node1); root.addContent(node2); }catch (Throwable e) { e.printStackTrace(); } write( doc, outWriterOrOutputOrFile, null ); .......//le doc xml est pret il faut donc l'ecrire voila la methode : static public void write( org.jdom.Document doc, Object outWriterOrOutputOrFile, String outputEncoding ) { FileOutputStream fout = null; try { Format form = Format.getPrettyFormat(); // if provided, force the output encoding (otherwise, it defaults to "UTF8") if ( null != outputEncoding ) { form.setEncoding( outputEncoding ); } XMLOutputter outputter = new XMLOutputter(form); if (outWriterOrOutputOrFile instanceof OutputStream) outputter.output(doc, (OutputStream) outWriterOrOutputOrFile); else if (outWriterOrOutputOrFile instanceof Writer) outputter.output(doc, (Writer) outWriterOrOutputOrFile); else if (outWriterOrOutputOrFile instanceof File) { File f = (File) outWriterOrOutputOrFile; fout = new FileOutputStream(f); outputter.output(doc, fout); fout.close(); } else { ErrorUtil.prt("XMLUtil.write() : type du writer inconnu !"); } } catch (Exception e) { ErrorUtil.prt("Impossible d'ecrire le JDOM"); e.printStackTrace(); if (fout != null) try { fout.close(); } catch (Exception ee) { } } } Et voila ; biensur a vous de modifier les parametres de votre XML et les noeuds..... |
salem, svp j'ai un pb de lecture du fichier XML a partir du java je pense qu'il existe une ou des bibliothèques pour que les programmes s'executent svp je vous demande de m'aider merci |
Coucou ;
C'est possible de lire un document XML en utilisant le JAVA, mais il faut dés le début choisir le type de parseur : DOM SAX ou JDOM.... Je te conseille d'utiliser JDOM. Le parsing est simple : il suffit, dans ton code JAVA de donner le nom entier de ton noeud root racine à JDOM.... Avec des méthodes simples, JDOM fera le reste.... Cordialement |
je veux generer ce fichier xml dans un code en java automatiquement:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE root SYSTEM "Parameters.dtd"> <root batch_name="PrintBatchDescriptor" user="" password="" env="" > <inputParameters> <![CDATA[ <PRINT_BATCH> <PRINT_CLIENT>RK5797</PRINT_CLIENT> <PRINT_DEFAULT> <PRINT_NB_COPY>1</PRINT_NB_COPY> <PRINT_OUTPUT_PRINTER>TIFF</PRINT_OUTPUT_PRINTER> <PRINT_OUTPUT_PRINTER_PARAMETERS> <?xml version="1.0" encoding="utf-8" ?><printer name="TIFF" export="RASTER"><defaultFormat name="Letter" orientation="landscape"/><maxFormat name="Letter"/><defaultMargins left="10" right="10" top="10" bottom="10"/><execUnix/><execWindows>rem Default:\\regor\RO9246 if exist "%CATOUT%" copy /b %CATOUT% \\regor\RO9246 if not exist "%CATOUT%" echo "The file %CATOUT% doesn't exist." </execWindows><rtimeUnix/><rtimeWindows>rem Default:D:\Temp\catout.out set CATOUT=D:\Temp\catout.out </rtimeWindows><RASTERProperties><TIFFProperties DPI="600" compression="Fax Group 4" quality="1"/></RASTERProperties></printer></PRINT_OUTPUT_PRINTER_PARAMETERS> <PRINT_OUTPUT_FILE> D:\Local\Home\Data\M523P1005-01.tif </PRINT_OUTPUT_FILE> <PRINT_IMAGE_FORMAT_USE>0</PRINT_IMAGE_FORMAT_USE> <PRINT_FORM_WIDTH>215.9</PRINT_FORM_WIDTH> <PRINT_FORM_HEIGHT>279.4</PRINT_FORM_HEIGHT> <PRINT_FORM_ORIENTATION>1</PRINT_FORM_ORIENTATION> <PRINT_POSITION_X>10</PRINT_POSITION_X> <PRINT_POSITION_Y>70.4424</PRINT_POSITION_Y> <PRINT_SCALE>0.329798</PRINT_SCALE> <PRINT_MARGIN_LEFT>10</PRINT_MARGIN_LEFT> <PRINT_MARGIN_RIGHT>10</PRINT_MARGIN_RIGHT> <PRINT_MARGIN_TOP>10</PRINT_MARGIN_TOP> <PRINT_MARGIN_BOTTOM>10</PRINT_MARGIN_BOTTOM> <PRINT_ROTATION>0</PRINT_ROTATION> <PRINT_MAP_TO_PAPER>0</PRINT_MAP_TO_PAPER> <PRINT_WHITE_PIXEL>1</PRINT_WHITE_PIXEL> <PRINT_BANNER>Printed by er25389 on 04/06/2008 12:30:54</PRINT_BANNER> <PRINT_BANNER_POSITION>0</PRINT_BANNER_POSITION> <PRINT_LOGO_VISIBILITY>0</PRINT_LOGO_VISIBILITY> <PRINT_LOGO_FILE> </PRINT_LOGO_FILE> <PRINT_COLOR_MODE>0</PRINT_COLOR_MODE> <PRINT_QUALITY>0</PRINT_QUALITY> <PRINT_GAMMA>1</PRINT_GAMMA> <PRINT_LINEWITH_SPECIFICATION>0</PRINT_LINEWITH_SPECIFICATION> <PRINT_LINETYPE_SPECIFICATION>0</PRINT_LINETYPE_SPECIFICATION> <PRINT_LINECAP>0</PRINT_LINECAP> <PRINT_BACKGROUND_COLOR_RED>1</PRINT_BACKGROUND_COLOR_RED> <PRINT_BACKGROUND_COLOR_GREEN>1</PRINT_BACKGROUND_COLOR_GREEN> <PRINT_BACKGROUND_COLOR_BLUE>1</PRINT_BACKGROUND_COLOR_BLUE> <PRINT_DPI>150</PRINT_DPI> <PRINT_TEXT_BLANKING>0</PRINT_TEXT_BLANKING> <PRINT_LINE_TYPE_OVERLAP>0</PRINT_LINE_TYPE_OVERLAP> <PRINT_VISU_IMAGE_COUNT>1</PRINT_VISU_IMAGE_COUNT> <PRINT_VISU_IMAGE_NUM>-2</PRINT_VISU_IMAGE_NUM> <PRINT_VISU_CLIP_TO_SHEET>1</PRINT_VISU_CLIP_TO_SHEET> <PRINT_VISU_DETAIL_SHEET>1</PRINT_VISU_DETAIL_SHEET> <PRINT_VISU_FILTER_NAME> </PRINT_VISU_FILTER_NAME> <PRINT_VISU_RENDERING>1</PRINT_VISU_RENDERING> </PRINT_DEFAULT> <PRINT_JOB> <PRINT_DOC> D:\Local\Home\Data\M523P1005-01.CATDrawing </PRINT_DOC> </PRINT_JOB> </PRINT_BATCH> ]]> <file id="doc_0" destination="" filePath="D:\Local\Home\Data\M523P1005-01.CATDrawing" type="bin" upLoadable="Yes" automatic="1"/> </inputParameters> <outputParameters> <file id="output_0" destination="" filePath="D:\Local\Home\Data\M523P1005-01A.tif" type="bin" upLoadable="Yes" automatic="1"/> </outputParameters> <PCList> <PC name="_SL3.slt_85AB9K65691" /> </PCList> </root> merci de me repondre ca urge!!! |
Si tu as tout ton fichier de sortie, le plus simple est d’écrire comme un fichier texte.
Sans t’embêter avec du DOM ou autre. |