使用SAX的XML解析器java Swing
问题描述:
我有一个小项目来完成。我必须解析一个XML文件,然后显示到用户界面(摆动)。我做了一些研究并尝试了SAX解析。现在,我正在考虑如何将对象模型转换为UI。 这里是教程链接,我发现: http://www.mkyong.com/java/how-to-read-xml-file-in-java-sax-parser/使用SAX的XML解析器java Swing
答
在这里,我们去你要的是做了什么。
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.util.ArrayList;
import java.util.Iterator;
public class JTableComponent {
public static void main(String[] args) {
new JTableComponent();
}
public JTableComponent() {
JFrame frame = new JFrame("Creating JTable Component Example!");
JPanel panel = new JPanel();
DefaultTableModel aModel = new DefaultTableModel() {
public boolean isCellEditable(int row, int column) {
return false;
}
};
Staff s1 = new Staff("vinod1", "BCA", "A", "10000");
Staff s2 = new Staff("vinod2", "BCA", "A", "20000");
Staff s3 = new Staff("vinod3", "BCA", "A", "30000");
Staff s4 = new Staff("vinod4", "BCA", "A", "40000");
ArrayList<Staff> l = new ArrayList<Staff>();// here you will get parser
// object this is as sample
l.add(s1);
l.add(s2);
l.add(s3);
l.add(s4);
Iterator<Staff> is = l.iterator();
String col[] = { "firstname", "lastname", "nickname", "salary" };
aModel.setColumnIdentifiers(col);
JTable table = new JTable(aModel);
while (is.hasNext()) {
Staff t = is.next();
String firstname = t.getFirstname();
String lastname = t.getLastname();
String nickname = t.getNickname();
String salary = t.getSalary();
String temp[] = { firstname, lastname, nickname, salary };
aModel.addRow(temp);
}
table.setModel(aModel);
panel.add(table, BorderLayout.CENTER);
frame.add(panel);
frame.setSize(300, 300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
豆你出xml文件
public class Staff
{
String firstname= "";
String lastname ="";
String nickname = "";
String salary = "";
public Staff(String firstname,String lastname,String nickname,String salary)
{
this.firstname= firstname;
this.lastname =lastname;
this.nickname = nickname;
this.salary = salary;
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getSalary() {
return salary;
}
public void setSalary(String salary) {
this.salary = salary;
}
}
答
可能是XMLEditorKit http://java-sl.com/xml_editor_kit.html会有所帮助。 它允许解析XML文件并在JEditorPane/JTextPane中显示它们。
你可以得到soruce代码并添加你自己的表示。
你可以发布你的代码的水果,你试过了吗? – sunleo
你觉得它看起来如何?你想要执行什么交互? – MadProgrammer
这里没有问题... –