xml宣言<?xml version='1.0'?>
を含んでも含まなくてもよいfileInputStreamオブジェクトがあります。 xml宣言があればそれを削除する必要があります。 inputStreamオブジェクトを文字列に変換せずにXML PIを取り除き、入力ストリームに変換し直すことなく、どうすればいいですか?javaで入力ストリームの最初の数文字を取り除く方法は?
InputStream inputStream = new FileInputStream(importFilePath);
これはXML処理命令ではなく、XML宣言と呼ばれています...データが無効になる可能性があるエンコードタイプなど、xmlに関する重要な情報を含む可能性があります...これはあなたが本当にやるべきことです? –
あなたは正しいです。 PIではありません。シナリオでは入力ストリームの先頭にを追加し、蒸気の最後に を追加する必要があり、結果ストリームをorg.w3c.dom.Document.parseに渡す必要があるため、PIとして参照しました)。 parseメソッドは、 "org.xml.sax.SAXParseException:処理命令はxmlで始める必要がありません"という例外をスローしていました。例外は、XML宣言の始まりを指していて、PIがXMLで始まってはならないと言っています。 –
arun8
はい。私の目標は、inputStreamからxml宣言を取り除くことです。 – arun8