2 つの異なる XML ファイル (同じ構造を持つ) を結合する方法に行き詰まっています。これについて調べていたところ、DOM や StAX などの XML パーサーを使用する必要があるという意見がありました。しかし、通常の IOStream でそれを行うことはできませんか? 私は現在 IOStream の助けを借りてやろうとしていますが、これは私の目的を解決しておらず、より複雑です。
たとえば、私が試したことは次のとおりです。
public class GUI {
public static void main(String[] args) throws Exception {
// Creates file to write to
Writer output = null;
output = new BufferedWriter(new FileWriter("C:\\merged.xml"));
String newline = System.getProperty("line.separator");
output.write("");
// Read in xml file 1
FileInputStream in = new FileInputStream("C:\\1.xml");
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
while ((strLine = br.readLine()) != null) {
if (strLine.contains("<MemoryDump>")){
strLine = strLine.replace("<MemoryDump>", "xmlns:xsi");
}
if (strLine.contains("</MemoryDump>")){
strLine = strLine.replace("</MemoryDump>", "xmlns:xsd");
}
output.write(newline);
output.write(strLine);
System.out.println(strLine);
}
// Read in xml file 2
FileInputStream in = new FileInputStream("C:\\2.xml");
BufferedReader br1 = new BufferedReader(new InputStreamReader(in));
String strLine1;
while ((strLine1 = br1.readLine()) != null) {
if (strLine1.contains("<MemoryDump>")){
strLine1 = strLine1.replace("<MemoryDump>", "");
}
if (strLine1.contains("</MemoryDump>")){
strLine1 = strLine1.replace("</MemoryDump>", "");
}
output.write(newline);
output.write(strLine1);
コンテンツを追加して 2 つの XML ファイルをマージする方法を教えてください。リンクの例もいくつか教えていただければ幸いです..!
前もって感謝します..!System.out.println(strLine1); }
}