1

DOMパーサーの助けを借りてJavaを使用してXMLファイルを解析したいのですが、Eclipseのディレクトリ構造でXMLファイルと.javaファイルをどこに保存する必要があるかを知りたいです。今、私の混乱は、これらの2つのファイルをEclipseのディレクトリ構造に追加する場所ですか? これで私を助けてください、

<?xml version="1.0" encoding="UTF-8"?>
<stocks>
<stock>
<symbol>Citibank</symbol>
<price>100</price>
<quantity>1000</quantity>
</stock>
<stock>
<symbol>Axis bank</symbol>
<price>90</price>
<quantity>2000</quantity>
</stock>
</stocks>

my.java コードはこちらです。

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 DOMExampleJava {

public static void main(String args[]) {
try {

File stocks = new File("Stocks.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(stocks);
doc.getDocumentElement().normalize();

System.out.println("root of xml file" + doc.getDocumentElement().getNodeName());
NodeList nodes = doc.getElementsByTagName("stock");
System.out.println("==========================");

for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);

if (node.getNodeType() == Node.ELEMENT_NODE) {
Element element = (Element) node;
System.out.println("Stock Symbol: " + getValue("symbol", element));
System.out.println("Stock Price: " + getValue("price", element));
System.out.println("Stock Quantity: " + getValue("quantity", element));
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}

private static String getValue(String tag, Element element) {
NodeList nodes = element.getElementsByTagName(tag).item(0).getChildNodes();
Node node = (Node) nodes.item(0);
return node.getNodeValue();
}
}
4

1 に答える 1

1

あなたの質問に基づいて、基本的な Eclipse のセットアップを行っていないように感じます。XML 解析プログラムを試す前に、このEclipse 入門チュートリアルを読み、チュートリアルにある基本プログラムを実行することをお勧めします。これにより、Eclipse セットアップの準備が整います。

次に、DOMExampleJavaクラスをプロジェクトに追加し (チュートリアルを完了すると、プロジェクトが何を参照しているかがわかります)、エラーなしでコンパイルされることを確認します。次に、解析例を実行してみてください。

XML ファイルの場所については、コンストラクターでファイル名を指定しただけなのでFile、プロジェクト ディレクトリ内にファイルを配置する必要があります。別の方法は、コンストラクターでファイルの絶対パスを指定することです。Fileたとえば、File("/home/some/directory/stock.xml")Linux またはFile("C:/Answers/File/data.txt")Windows の場合です。こうすれば、Eclipse のディレクトリ構造に関連する場所を気にする必要がありません。

問題がある場合は、コメントでお知らせください。

于 2013-03-28T13:21:37.950 に答える