Posted in XML
<?xml version="1.0"?> <penerbit> <buku> <judul><![CDATA[Al Umm jil. 1]]></judul> <penulis><![CDATA[Pengarang: Imam Syafi’iTebal: 824 hal.Pembahasan: · Biografi Imam Syafi..]]></penulis> <keterangan><![CDATA[Rp109.650]]></keterangan> <sumber><![CDATA[sahabatmuslim]]></sumber> </buku> </penerbit>
<?xml version="1.0"?> <penerbit> <buku> <judul><![CDATA[[AZ-347] Al Mughni jilid 1]]></judul> <penulis><![CDATA[Ibnu Qudamah]]></penulis> <keterangan><![CDATA[Rp104.550,00]]></keterangan> <sumber><![CDATA[buku-islam]]></sumber> </buku> </penerbit>Selanjutnya kita akan menggabungkan kedua file XML tersebut.
private void btnBrowse1ActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser jfc = new JFileChooser(); jfc.showOpenDialog(null); File file = jfc.getSelectedFile(); dir = file.getAbsolutePath(); txtPath1.setText(dir); }Oh iya, sebelumnya jangan lupa deklarasikan variabel dir di bawah class utama.
public class JoinForm extends javax.swing.JFrame { private String dir; private String dir2; private String fileName;Klik dua kali juga pada button Browse yang kedua (btnBrowse2) dan sesuaikan dengan source berikut ini.
private void btnBrowse2ActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser jfc2 = new JFileChooser(); jfc2.showOpenDialog(null); File file = jfc2.getSelectedFile(); dir2 = file.getAbsolutePath(); txtPath2.setText(dir2); }Langkah terakhir, berikan event juga untuk button Merge dengan cara klik dua kali dan sesuaikan dengan source code berikut ini.
private void btnMergeActionPerformed(java.awt.event.ActionEvent evt) { fileName = txtMergedFile.getText(); Writer output; try { output = new BufferedWriter(new FileWriter(fileName)); String newline = System.getProperty("line.separator"); output.write("<?xml version=\"1.0\"?>"); output.write("<penerbit>"); // Read in xml file 1 FileInputStream in = new FileInputStream(dir); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; while ((strLine = br.readLine()) != null) { if (strLine.contains("<?xml version=\"1.0\"?>")){ strLine = strLine.replace("<?xml version=\"1.0\"?>", ""); } if (strLine.contains("<penerbit>")){ strLine = strLine.replace("<penerbit>", ""); } if (strLine.contains("</penerbit>")){ strLine = strLine.replace("</penerbit>", ""); } output.write(newline); output.write(strLine); //System.out.println(strLine); } // Read in xml file 2 FileInputStream in2 = new FileInputStream(dir2); BufferedReader br2 = new BufferedReader(new InputStreamReader(in2)); String strLine2; while ((strLine2 = br2.readLine()) != null) { if (strLine2.contains("<?xml version=\"1.0\"?>")){ strLine2 = strLine2.replace("<?xml version=\"1.0\"?>", ""); } if (strLine2.contains("<penerbit>")){ strLine2 = strLine2.replace("<penerbit>", ""); } if (strLine2.contains("</penerbit>")){ strLine2 = strLine2.replace("</penerbit>", ""); } output.write(strLine2); output.write(newline); //System.out.println(strLine2); } output.write("</penerbit>"); output.close(); JOptionPane.showMessageDialog(null, "Merge Complete!"); } catch (IOException ex) { Logger.getLogger(JoinForm.class.getName()).log(Level.SEVERE, null, ex); } }Untuk file JoinXML.java isikan saja mirip dengan tutorial di Memperbaiki Tampilan Program Java di Netbeans, yaitu sesuaikan dengan source berikut.
public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) { } finally{ new JoinForm().setVisible(true); } }Sekarang program anda telah selesai, cobalah untuk me-run program anda, dan pilih file XML yang serupa untuk digabungkan. Berikut ini adalah tampilan program ketika di run [caption id="" align="alignnone" width="416"]
<?xml version="1.0"?> <penerbit> <buku> <judul><![CDATA[Al Umm jil. 1]]></judul> <penulis><![CDATA[Pengarang: Imam Syafi’iTebal: 824 hal.Pembahasan: · Biografi Imam Syafi..]]></penulis> <keterangan><![CDATA[Rp109.650]]></keterangan> <sumber><![CDATA[sahabatmuslim]]></sumber> </buku> <buku> <judul><![CDATA[[AZ-347] Al Mughni jilid 1]]></judul> <penulis><![CDATA[Ibnu Qudamah]]></penulis> <keterangan><![CDATA[Rp104.550,00]]></keterangan> <sumber><![CDATA[buku-islam]]></sumber> </buku> </penerbit>Selamat mencoba.