2016-05-05 14 views
1

Ich muss XML-Datei lesen, die in S3 mit SAXParser findet. Ich habe viele Beispiele gefunden, wie man in S3 ein normales liest, aber es gibt kein Material zu meiner Frage.XML-Datei in S3 mit SAXParser lesen

Der Grund für mich, SAXParser zu verwenden, ist, weil ich die XML-Datei validieren muss. Im Folgenden finden Sie das Codebeispiel zum Überprüfen einer lokalen XML-Datei.

Source schemaFile = new StreamSource(entitiesScriptSchema); 
System.out.println(path); 
Source xmlFile = new StreamSource(new File(path)); 
SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); 
Schema schema = schemaFactory.newSchema(schemaFile); 
Validator validator = schema.newValidator(); 
validator.validate(xmlFile); 

Antwort

0

Sie würden eine InputStream des S3-Objekt über erhalten:

InputStream s3stream = s3Client.getObject("bucket", "key").getObjectContent();

Dann sollten Sie in der Lage sein InputStream die InputStream auf die SAX-Parser wie jede andere Java zu übergeben.

+0

Sie meinen den Eingabestrom hier? Quelle xmlFile = neue StreamSource (neue Datei (Pfad)); –

+0

Ja, ändere diese Zeile in 'Source xmlFile = new StreamSource (s3stream);' –

+0

Danke ~~~~~~~~~ –