私は日食を使用しており、ノードの mytag テキストを選択したいと考えています。取得するにはどうすればよいですか?次のコードがあります。
XPath xpath = XPathFactory.newInstance().newXPath();
String expression = "/outertag/innertag/mytag/text()";
InputSource inputSource = new InputSource("http://www.anddev.org/images/tut/basic/parsingxml/example.xml");
NodeList nodes = null;
try {
nodes = (NodeList) xpath.evaluate(expression, inputSource, XPathConstants.NODESET);
} catch (XPathExpressionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int i=nodes.getLength();
私が参照した資料はhttp://www.w3schools.com/xpath/xpath_examples.asp です デバッグをチェックすると、ノードの内容が非常に複雑になりますが、どれも mytag テキストではありません -- anddev.org rulez ためにこれを取り出して、どうすればいいですか?ありがとう!
その Web サイトの xml ファイル (URL のパラメーター):
<?xml version="1.0"?>
<outertag>
<innertag sampleattribute="innertagAttribute">
<mytag>
anddev.org rulez =)
</mytag>
<tagwithnumber thenumber="1337"/>
</innertag>
</outertag>
結果 i は 1 です。しかし、ノードはテキスト文字列を与えません。mで始まる「説明」のリストです。私が望むのは、そのテキストを取り出すことだけです。私が本当に解析する必要があるのは、巨大なテーブルである内部 Web サイトであるためです。そして、各カテゴリに従ってそのテーブルのデータを保存する必要があります。たとえば、1 つのファイルには名前と数学のスコアが含まれ、もう 1 つのファイルには名前と物理学が含まれます。
<TABLE border="2" frame="hsides" rules="groups"
summary="Code page support in different versions
of MS Windows.">
<CAPTION>CODE-PAGE SUPPORT IN MICROSOFT WINDOWS</CAPTION>
<COLGROUP align="center">
<COLGROUP align="left">
<COLGROUP align="center" span="2">
<COLGROUP align="center" span="3">
<THEAD valign="top">
<TR>
<TH>Code-Page<BR>ID
<TH>Name
<TH>ACP
<TH>OEMCP
<TH>Windows<BR>NT 3.1
<TH>Windows<BR>NT 3.51
<TH>Windows<BR>95
<TBODY>
<TR><TD>1200<TD>Unicode (BMP of ISO/IEC-10646)<TD><TD><TD>X<TD>X<TD>*
<TR><TD>1250<TD>Windows 3.1 Eastern European<TD>X<TD><TD>X<TD>X<TD>X
<TR><TD>1251<TD>Windows 3.1 Cyrillic<TD>X<TD><TD>X<TD>X<TD>X
<TR><TD>1252<TD>Windows 3.1 US (ANSI)<TD>X<TD><TD>X<TD>X<TD>X
<TR><TD>1253<TD>Windows 3.1 Greek<TD>X<TD><TD>X<TD>X<TD>X
<TR><TD>1254<TD>Windows 3.1 Turkish<TD>X<TD><TD>X<TD>X<TD>X
<TR><TD>1255<TD>Hebrew<TD>X<TD><TD><TD><TD>X
<TR><TD>1256<TD>Arabic<TD>X<TD><TD><TD><TD>X
<TR><TD>1257<TD>Baltic<TD>X<TD><TD><TD><TD>X
<TR><TD>1361<TD>Korean (Johab)<TD>X<TD><TD><TD>**<TD>X
<TBODY>
<TR><TD>437<TD>MS-DOS United States<TD><TD>X<TD>X<TD>X<TD>X
<TR><TD>708<TD>Arabic (ASMO 708)<TD><TD>X<TD><TD><TD>X
<TR><TD>709<TD>Arabic (ASMO 449+, BCON V4)<TD><TD>X<TD><TD><TD>X
<TR><TD>710<TD>Arabic (Transparent Arabic)<TD><TD>X<TD><TD><TD>X
<TR><TD>720<TD>Arabic (Transparent ASMO)<TD><TD>X<TD><TD><TD>X
</TABLE>
and の後のすべてなので、 nodeList でなければならないと思います。