نمایش نتایج 1 تا 2 از 2

نام تاپیک: فراخوانی و لود فایل xmp در jtable

  1. #1

    Post فراخوانی و لود فایل xml در jtable

    سلام من یه فایل xml دارم که میخوام توی jtable نمایشش بدم البته نه از طریق کلاس بلکه توی gui یه فرم ساختم بهش یه jtable اضافه کردم ولی هر کاری میکنم دیتایی که توی xml دارم توی تیبل توی فرمم نمایش داده نمیشه
    این کد توی فرمم هستش:

    public File xml = null;
    public Document dom = null;


    public DefaultTableModel model;


    public Document parseFile(File file) {
    try {
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    dom = (Document) builder.parse(file);
    } catch (Exception e) {
    e.printStackTrace();
    }
    return dom;
    }


    public Object getArticleInfo(String tagName, Element elem) {
    NodeList list = elem.getElementsByTagName(tagName);
    for (int i = 0; i < list.getLength(); ++i) {
    Node node = (Node) list.item(i);
    if (node.getNodeType() == Node.ELEMENT_NODE) {
    Node child = (Node) node.getFirstChild();
    return child.getTextContent().trim();
    }


    return null;
    }


    return null;
    }


    public void insertTableRows(DefaultTableModel tableModel, Document doc) {
    Element root = doc.getDocumentElement();
    NodeList list = root.getElementsByTagName("article");
    for (int i = 0; i < list.getLength(); ++i) {
    Element e = (Element) list.item(i);
    if (e.getNodeType() == Element.ELEMENT_NODE) {
    Object[] row = {getArticleInfo("author", e), getArticleInfo("headline", e), getArticleInfo("email", e)};
    tableModel.addRow(row);
    }
    }


    tableModel.fireTableStructureChanged();
    tableModel.fireTableDataChanged();
    }


    public void DefaultXMLTableModel() {


    xml = new File(System.getProperty("user.dir") + File.separator + "rowdata.xml");
    model = new DefaultTableModel() {
    public boolean isCellEditable(int row, int column) {
    return false;
    }
    };


    model.addColumn("Author");
    model.addColumn("Headline");
    model.addColumn("Email");
    jTable2 = new JTable(model);
    jTable2.setGridColor(Color.blue);
    jTable2.setShowGrid(true);



    if (xml.exists() && xml.length() != 0) {
    dom = parseFile(xml);
    insertTableRows(model, dom);
    }
    }



    این هم کد فایل xml هستش:

    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <article>
    <headline>First headline</headline>
    <author>First author</author>
    <email>author_no1@someauthor.com</email>
    </article>

    <article>
    <headline>Second headline</headline>
    <author>Second author</author>
    <email>author_no2@anotherauthor.com</email>
    </article>

    <article>
    <headline>Maysam</headline>
    <author>Soleymani</author>
    <email>maysam.soleymani@gmail.com</email>
    </article>

    </root>
    آخرین ویرایش به وسیله cnmeysam : چهارشنبه 13 اسفند 1399 در 22:41 عصر

  2. #2

    نقل قول: فراخوانی و لود فایل xmp در jtable

    پیدا کردم امیدوارم به دردتون بخوره
    باید به جای

    jTable2 = newJTable(model);


    از کد زیر استفاده میکردم

    jTable2.setModel(model);

تاپیک های مشابه

  1. سطر کلیک شده در jtable
    نوشته شده توسط suraty در بخش برنامه‌نویسی جاوا
    پاسخ: 0
    آخرین پست: یک شنبه 30 آذر 1393, 15:20 عصر
  2. مشکل در نحوه ی نمایش عناصر طراحی شده در jtable
    نوشته شده توسط bigtime در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 2
    آخرین پست: جمعه 18 مرداد 1392, 12:17 عصر
  3. سوال: حذف سطر انتخاب شده در Jtable و حذف از فایل متنی
    نوشته شده توسط sajjad4563 در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 0
    آخرین پست: سه شنبه 10 بهمن 1391, 16:35 عصر
  4. ارتباط داده ها با JTABLE
    نوشته شده توسط mostafarastin239 در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 9
    آخرین پست: چهارشنبه 31 شهریور 1389, 22:01 عصر
  5. اضافه کردن سطر جدید به jTable و حذف یک سطر خاص
    نوشته شده توسط epm157 در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 2
    آخرین پست: پنج شنبه 17 تیر 1389, 14:07 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •