问题
xml file "test.xml"
1
2
3
4
5
6
7
8
9
10
11
|
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
div
>
<
div
>aa
<
a
href
=
""
>bb</
a
>
aa
<
a
href
=
""
>bb</
a
>
aa
</
div
>
<
div
>
</
div
>
</
div
>
|
用 Java 打印出文本内容(text content) "aabbaabbaa"
解决示范代码
Java file: PrintXmlNodeText.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
import
java.io.*;
import
javax.xml.parsers.*;
import
org.w3c.dom.*;
import
org.xml.sax.*;
public
class
PrintXmlNodeText {
public
final
static
String filePath =
"test.xml"
;
// Replace with your file path
public
static
void
main(String[] args) {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(
true
);
try
{
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(
new
FileInputStream(filePath));
Element element = doc.getDocumentElement();
String txt = element.getTextContent().replaceAll(
"\\s+"
,
""
);
// Key line for your problem
System.out.println(txt);
// Result: "aabbaabbaa"
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
|
连接