2010-11-24 4 views

Antwort

12

Verwenden ClassLoader.getResourceAsStream oder Class.getResourceAsStream, und laden Sie es dann wie für jede andere InputStream.

(Der Unterschied der ClassLoader-Version und die Class Version zwischen der Verwendung ist, wie „relative“ Ressourcenpfade aufgelöst werden Mit der ClassLoader Version, ist es immer effektiv als absoluter Pfad behandelt;. Mit der Class Version, wenn der Pfad ‚doesn t beginnen mit "/" es wird als relativ zum Paket dieser Klasse behandelt.)

+0

Vielen Dank für Ihre Antwort. Ich kann die Datei laden und sie als InputStream lesen. Jetzt Mein Problem ist, ich muss diese Datei laden, um eine XML-Datei zu validieren (d. H. Schema-Validierung). Dazu benutze ich folgendes Code-Snippet. SchemaFactory factory = SchemaFactory.newInstance (schemaInstance); Schema schema = factory.newSchema (schemam); Validator xmlValidator = schema.newValidator(); Zum Erstellen des Schemas brauche ich eine Instanz der Schemadatei, und ich muss vor classpath laden. Irgendwelche Vorschläge bitte? – Narendra

+1

@Narendra: Ich fürchte, ich habe nicht viel mit Schemas gearbeitet, aber Sie könnten eine 'StreamSource' aus einem' InputStream' erstellen und 'factory.newSchema (streamSource)' aufrufen. –

Verwandte Themen