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