gpt4 book ai didi

Java 对话框允许使用选择文件

转载 作者:太空宇宙 更新时间:2023-11-04 08:51:06 27 4
gpt4 key购买 nike

这是我目前的代码:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class XMLReader extends JFrame
{
JFileChooser _fileChooser = new JFileChooser();
JPanel content = new JPanel();

//... Create menu elements (menubar, menu, menu item)
JMenuBar menubar = new JMenuBar();
JMenu fileMenu = new JMenu("File");
JMenuItem openItem = new JMenuItem("Open...");
int retval = _fileChooser.showOpenDialog(XMLReader.this);
//... The user selected a file, get it, use it.
public static void main(String argv[])
{
ArrayList timeStamp = new ArrayList();
ArrayList Y = new ArrayList();
File file = XMLReader.this;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(file);
doc.getDocumentElement().normalize();
System.out.println("Root element " + doc.getDocumentElement().getNodeName());
NodeList nodeLst = doc.getElementsByTagName("reading");
System.out.println("Share Data");

for (int s = 0; s < nodeLst.getLength(); s++) {

Node fstNode = nodeLst.item(s);

if (fstNode.getNodeType() == Node.ELEMENT_NODE) {

Element fstElmnt = (Element) fstNode;
NodeList fstNmElmntLst = fstElmnt.getElementsByTagName("timeStamp");
.
.
.
}

我试图获得一个对话框来允许用户选择他们想要解析的 XML。我知道解析是有效的,因为我之前在文件中进行了硬编码。

我还想返回 ArrayList,以便我可以将它们用作另一个类的输入,这可能吗(目前我只将它们打印到屏幕上)?

System.out.println(timeStamp);
System.out.println(Y);

我可以使用 return 语句吗?如果可以,如何设置我想要在其中使用它们的类?

最佳答案

该对话框用于检索路径

我发现您正在使用 awt 和 dom,所以:

public Document loadXmlFile(Frame frame, DocumentBuilder docBuilder, String startPath) {

FileDialog fd = new FileDialog(frame, "Loadxml-title", FileDialog.LOAD);
//Add type filter
fd.setDirectory(startPath));
fd.show();

String file = fd.getFile();

if(file == null) {
return null;
}

return docBuilder.parse(file);

}

关于Java 对话框允许使用选择文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3334219/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com