http

2009-08-24 12 views
6
का उपयोग कर xml फ़ाइल पढ़

कोई भी http से अधिक एक xml फ़ाइल में पढ़ने का एक त्वरित तरीका है के बारे में पता है? (जैसे मैं http://www.abc.com/file.xml में स्थित एक फ़ाइल है)।http

final URL url = new URL("http://www.abc.com/file.xml"); 
final InputStream in = new BufferedInputStream(url.openStream()); 
// Read the input stream as usual 

अपवाद संचालन और सामान के लिए छोड़े गए: कैसे मैं एक जावा अनुप्रयोग

सभी मदद बहुत सराहना कर रहा है से इस फ़ाइल को पढ़ सकते हैं

धन्यवाद डेमियन

उत्तर

9

उपयोग java.net.URL एक InputStream पाने के लिए संक्षिप्तता।

+0

धन्यवाद समाधान डेव के लिए, एक इलाज – Damien

3

डेव रे की जवाब वास्तव में जल्दी और आसानी से है, लेकिन यह HTTP के साथ अच्छी तरह से काम नहीं चलेगा पुनर्निर्देश या आप उदाहरण के लिए एक प्रॉक्सी सर्वर है कि प्रमाणीकरण की आवश्यकता है के माध्यम से जाना है। दुर्भाग्यवश, मानक जावा एपीआई कक्षाओं (java.net में) में कुछ कार्यक्षमता की कमी है या ऐसी परिस्थितियों में उपयोग करना मुश्किल है।

खुला स्रोत पुस्तकालय Apache HttpClient संभाल कर सकते हैं स्वचालित रूप से रीडायरेक्ट और यह आसान प्रॉक्सी सर्वर प्रमाणीकरण की आवश्यकता के साथ काम है।

यहाँ एक बुनियादी उदाहरण है:

HttpClient client = new HttpClient(); 
GetMethod method = new GetMethod("http://www.abc.com/file.xml"); 

int statusCode = client.executeMethod(method); 
if (statusCode != HttpStatus.SC_OK) { 
    System.err.println("Method failed: " + method.getStatusLine()); 
} 

byte[] responseBody = method.getResponseBody(); 
+0

धन्यवाद जेस्पर काम किया। सर्वर जो एक्सएमएल रखता है मेरे नियंत्रण में है इसलिए मुझे रीडायरेक्ट के बारे में चिंता करने की ज़रूरत नहीं है। धन्यवाद हालांकि आपके वैध इनपुट के लिए, इसकी बहुत सराहना की गई – Damien

0

आप W3C डोम के प्रयोग पर योजना बनाने और आईओ में से किसी में कोई दिलचस्पी नहीं कर रहे हैं या HTTP विवरण आप कर सकते हैं निम्नलिखित:

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

... 

final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
final DocumentBuilder builder = factory.newDocumentBuilder(); 
final Document document = builder.parse("http://www.abc.com/file.xml");