[Linux-programlama] Re: text dosyasını xml'e çevirmek..

---------

[Linux-programlama] Re: text dosyasını xml'e çevirmek..

From: Ayris Uygur <ayrisuygur_at_yahoo.com>
Date: Fri, 27 Mar 2009 01:53:18 -0700 (PDT)
Message-ID: <582326.20375.qm@web45410.mail.sp1.yahoo.com>

yanýtýn için teþekkür ederim, fakat o kadar amatör bir hata olduðunu sanmýyorum, çünkü array size'ýný 20 deðil 1000 yaptýðýmda da ayný exception'ý alýyorum, size'ý artýrarak sadece boþ yere memory'de yer açmýþ oldum.. :)

--- On Thu, 3/26/09, ANIL KARADAÐ <anil.karadag_at_gmail.com> wrote:

> From: ANIL KARADAÐ <anil.karadag_at_gmail.com>
> Subject: [Linux-programlama] Re: text dosyasýný xml'e çevirmek..
> To: "Özgür yazýlýmlarla çeþitli dillerde yazýlým geliþtirme" <linux-programlama_at_liste.linux.org.tr>
> Date: Thursday, March 26, 2009, 5:26 PM
> String [] elements=new String
> [20];
>
> Bir string dizisinde her bir elemanýn max 20 karakterli
> olmasýný ifade ediyorsun ancak owner ý iþlerken split
> ile boldugun bolum 20 karakterden fazla ise sen bu hatayý
> alýrsýn. Sana söyledigi sey su en fazla 20 elemanlý bir
> diziye 20 den fazla eleman atamaya calisiyorsun.
>
>
>
>
> 26 Mart 2009 Perþembe 11:43
> tarihinde Ayris Uygur <ayrisuygur_at_yahoo.com>
> yazdý:
>
>
>
>
>
> slm ark.lar..ben bir text dosyasýndaki bilgileri okutup,
> xml dosyasýna yazmak istiyorum..fakat program sadece
> dosyamdaki ilk 2 property'i ("domain_name" ve
> "address") alarak xml'e
> yazýyor.."server"dan sonrasýný
> ("owner", "owner e-mail" vs.) almaya
> çalýþtýðýmda aþaðýdaki exception'ý
> alýyorum...
>
>
>
>
> java.lang.ArrayIndexOutOfBoundsException: 2
>
>        at ToXML.process(ToXML.java:92)
>
>        at ToXML.doit(ToXML.java:32)
>
>        at ToXML.main(ToXML.java:22)
>
>
>
> aldýðým satýrlar array size'ýný nasýl geçiyor
> olabilir, array'im 20'lik sonuçta..bir fikriniz var
> mý, þimdiden teþekkür ediyorum.. :)
>
>
>
>
>
>
>
> input dosyam aþaðýdaki þekilde :
>
>
>
> text2.txt
>
> -----------------------
>
> Name: Inverse IPv4 Domain
>
> Address: 4676 Admiralty Way
>
> Server: ns1.blabla.com
>
> Server2: ns2.blabla.com
>
> Owner: Internet Assigned Numbers Authority (IANA)
>
> Owner email: iana_at_iana.org
>
> Registration date: 13-October-2001
>
> Expiration Date: 20-October-2001
>
>
>
>
>
>
>
> source code:
>
> -------------------------
>
> import java.io.*;
>
> import java.util.Scanner;
>
>
>
> // SAX classes.
>
> import org.xml.sax.*;
>
> import org.xml.sax.helpers..*;
>
>
>
> import javax.xml.parsers.*;
>
> import javax.xml.transform.*;
>
> import javax.xml.transform.stream.*;
>
> import javax.xml.transform.sax.*;
>
>
>
> public class ToXML {
>
>
>
>  BufferedReader in;
>
>  StreamResult out;
>
>
>
>  TransformerHandler th;
>
>  AttributesImpl atts;
>
>
>
>  public static void main (String args[]) {
>
>      new ToXML().doit();
>
>  }
>
>
>
>  public void doit () {
>
>    try{
>
>      in = new BufferedReader(new
> FileReader("/home/ayris/Masaüstü/test2.txt"));
>
>      out = new
> StreamResult("/home/ayris/Masaüstü/test2.xml");
>
>      initXML();
>
>      String str;
>
>      while ((str = in.readLine()) != null) {
>
>         process(str);
>
>      }
>
>      in.close();
>
>      closeXML();
>
>    }
>
>    catch (Exception e) { e.printStackTrace(); }
>
>  }
>
>
>
>  public void initXML() throws
> ParserConfigurationException,
>
>      TransformerConfigurationException, SAXException {
>
>    // JAXP + SAX
>
>    SAXTransformerFactory tf =
>
>       (SAXTransformerFactory)
> SAXTransformerFactory.newInstance();
>
>
>
>    th = tf.newTransformerHandler();
>
>    Transformer serializer = th.getTransformer();
>
>  
>  serializer.setOutputProperty(OutputKeys.ENCODING,"ISO-8859-1");
>
>    // pretty XML output
>
>    serializer.setOutputProperty
>
>        ("{http://xml.apache.org/xslt}indent-amount",
> "4");
>
>  
>  serializer.setOutputProperty(OutputKeys.INDENT,"yes");
>
>    th.setResult(out);
>
>    th.startDocument();
>
>    atts = new AttributesImpl();
>
>  
>  th.startElement("","","domains",atts);
>
>  }
>
>
>
>  public static byte[] sizeOf(Object obj) throws
> java.io.IOException
>
>  {
>
>  ByteArrayOutputStream byteObject = new
> ByteArrayOutputStream();
>
>  ObjectOutputStream objectOutputStream = new
> ObjectOutputStream(byteObject);
>
>  objectOutputStream.writeObject(obj);
>
>  objectOutputStream.flush();
>
>  objectOutputStream.close();
>
>  byteObject.close();
>
>
>
>  return byteObject.toByteArray();
>
>  }
>
>
>
>  public void process (String s) throws SAXException {
>
>
>
>          String [] elements=new String [20];
>
>          elements=s.split("\\: ");
>
>          atts.clear();
>
>
>
>
>
>              
>  th.startElement("","","domain",atts);
>
>
>
>              
>  th.startElement("","","domain_name",atts);
>
>              
>  th.characters(elements[0].toCharArray(),0,elements[0].length());
>
>              
>  th.endElement("","","domain_name");
>
>
>
>
>
>    //System.out.println("error");
>
>
>
>              
>  th.startElement("","","address",atts);
>
>              
>  th.characters(elements[1].toCharArray(),0,elements[1].length());
>
>              
>  th.endElement("","","address");
>
>
>
>              
>  th.startElement("","","server1",atts);
>
>              
>  th.characters(elements[2].toCharArray(),0,elements[2].length());
>
>              
>  th.endElement("","","server1");
>
>
>
>              
>  th.startElement("","","server2",atts);
>
>              
>  th.characters(elements[3].toCharArray(),0,elements[3].length());
>
>              
>  th.endElement("","","server2");
>
>
>
>              
>  th.startElement("","","owner",atts);
>
>              
>  th.characters(elements[4].toCharArray(),0,elements[4].length());
>
>              
>  th.endElement("","","owner");
>
>
>
>              
>  th.startElement("","","owner_email",atts);
>
>              
>  th.characters(elements[5].toCharArray(),0,elements[5].length());
>
>              
>  th.endElement("","","owner_email");
>
>
>
>              
>  th.startElement("","","registration_date",atts);
>
>              
>  th.characters(elements[6].toCharArray(),0,elements[6].length());
>
>              
>  th.endElement("","","registration_date");
>
>
>
>              
>  th.startElement("","","expiration_date",atts);
>
>              
>  th.characters(elements[7].toCharArray(),0,elements[7].length());
>
>              
>  th.endElement("","","expiration_date");
>
>
>
>              
>  th.endElement("","","domain");
>
>
>
>  }
>
>
>
>  public void closeXML() throws SAXException {
>
>  
>  th.endElement("","","domains");
>
>    th.endDocument();  }
>
> }
>
>
>
>
>
>
>
>
>
>
>
>
>
> _______________________________________________
>
> Linux-programlama mailing list
>
> Linux-programlama_at_liste.linux.org.tr
>
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
>
>
> --
> Anýl KARADAÐ
> Cihan Biliþim A.Þ. - Yazýlým Geliþtirme Uzmaný
> GYTE- Bilgisayar Müh. Yüksek Lisans öðrencisi
> http://anilkaradag.info/blog
>
>
>
> -----Inline Attachment Follows-----
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>

      
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Fri 27 Mar 2009 - 09:34:59 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.