java/alt2xml-bin/src/cz/frantovo/alt2xml/CLI.java
author František Kučera <franta-hg@frantovo.cz>
Thu, 05 Jun 2014 10:07:34 +0200
changeset 7 9107f7df660c
parent 3 java/alt2xml/src/cz/frantovo/alt2xml/CLI.java@6c608fd8c019
child 11 aaf6648af0aa
permissions -rw-r--r--
přejmenování alt2xml → alt2xml-bin
     1 package cz.frantovo.alt2xml;
     2 
     3 import cz.frantovo.alt2xml.výstup.EchoContentHandler;
     4 import java.io.InputStream;
     5 import java.io.OutputStream;
     6 import javax.xml.parsers.SAXParser;
     7 import javax.xml.parsers.SAXParserFactory;
     8 import javax.xml.stream.XMLOutputFactory;
     9 import javax.xml.stream.XMLStreamWriter;
    10 import org.xml.sax.helpers.DefaultHandler;
    11 
    12 /**
    13  *
    14  * @author fiki
    15  */
    16 public class CLI {
    17 
    18 	public static void main(String[] args) throws Exception {
    19 		/**
    20 		 * Použijeme standardní vstup a výstup:
    21 		 */
    22 		InputStream vstup = System.in;
    23 		OutputStream výstup = System.out;
    24 		
    25 		/**
    26 		 * Serializujeme data do XML.
    27 		 * To normálně vůbec není potřeba – data se do tvaru proudu obsahujícího ostré závorky
    28 		 * vůbec nedostanou – zpracováváme události (volání javovských metod – začátky a konce elementů atd.)
    29 		 * a z nich např. deserializujeme nějaké naše objekty, provádíme nějaké akce, nebo třeba stavíme DOM.
    30 		 */
    31 		XMLOutputFactory xmlOutputFactory = XMLOutputFactory.newFactory();
    32 		XMLStreamWriter w = xmlOutputFactory.createXMLStreamWriter(výstup);
    33 		DefaultHandler h = new EchoContentHandler(w);
    34 		
    35 		/**
    36 		 * Parsujeme JSON a děláme z něj XML:
    37 		 */
    38 		SAXParserFactory t = SAXParserFactory.newInstance(SAXTovarna.class.getName(), null);
    39 		SAXParser p = t.newSAXParser();
    40 		p.parse(vstup, h);
    41 	}
    42 }