2010-11-29 5 views
1
package com.converter; 

import java.io.IOException; 
import java.net.URI; 
import java.net.URL; 

import java.util.StringTokenizer; 

import javax.xml.parsers.DocumentBuilder; 
import javax.xml.parsers.DocumentBuilderFactory; 
import org.w3c.dom.Document; 

import org.w3c.dom.Node; 
import org.w3c.dom.NodeList; 
import org.xml.sax.SAXParseException; 
//import XmlReader.java; 
public class XMLReader { 
public Float value = 25f; 

public XMLReader(){ 
String parseString = ""; 


try { 

    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 
    // dbf.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false); 
    DocumentBuilder db = dbf.newDocumentBuilder(); 
    URI uri = new URI("http://themoneyconverter.com/USD/rss.xml"); 

    ****Document doc = db.parse(uri.toString());****  

    doc.getDocumentElement().normalize(); 
    NodeList nodeLst = doc.getElementsByTagName("description"); 
    int length = nodeLst.getLength(); 

    for (int s = 0; s < length; s++) { 
    Node fstNode = nodeLst.item(s); 
    parseString = fstNode.getTextContent(); 

    if(parseString.contains("Indian Rupee")){ 
     System.out.println(parseString); 
     StringTokenizer parser = new StringTokenizer(parseString,"="); 
     parser.nextToken(); 
     StringTokenizer parser1 = new StringTokenizer(parser.nextToken());  
     value = Float.valueOf(parser1.nextToken()); 
     System.out.println(value); 

    } 

    } 
    } catch (SAXParseException e) { 
    value = 30f; 
     e.printStackTrace(); 
    }catch (IOException e) { 
    value = 33f; 
     e.printStackTrace(); 
    }catch (Exception e) { 
     value = 32f; 
     e.printStackTrace(); 
    } 

} 

} 
+0

Was zeigt der Stack-Trace? –

+0

Und was ist die Nachricht in der Ausnahme? –

Antwort

1

Dieses arbeitet für mich outputing:

1 US Dollar = 45.92697 Indian Rupee 
45.92697 

Also ich denke, einige Netzwerkprobleme haben die Ressource zugreifen. Überprüfen Sie Ihre Firewall-Einstellungen, Anti-Viren-Programme usw.

Oder vielleicht die Stack-Trace hier einfügen, wenn Sie weitere Hilfe benötigen;)

Prost!

+0

das hat funktioniert !! vielen Dank – ven