正在回答
3回答
同学你好,首先代码读取xml文件是没有问题的,可以重复多次读取xml文件中的内容。另外使用绝对路径也是可以的。至于写入程序报错,在同学的另一个问答中回复了,需要在写入后,使用writer.closer()将流关闭,将写的内容刷新到xml文件中。最后建议同学在创建文件及包时,不要使用中文命名,规范命名后,再使用绝对路径试试。
祝:学习愉快~
哆丶哆
2019-07-10 16:33:31
<?xml version="1.0" encoding="UTF-8"?> <teaching-plan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="plan.xsd"> <course id="TC001"> <course-name>高等数学</course-name> <class-hour>36</class-hour> <exam-form>考试</exam-form> </course> <course id="TC002"> <course-name>计算机二级</course-name> <class-hour>48</class-hour> <exam-form>上机考试</exam-form> </course> <course id="TC003"> <course-name>汇编语言</course-name> <class-hour>106</class-hour> <exam-form>考试</exam-form> </course> </teaching-plan>
package 从网页搭建入门JavaWeb.步骤三JavaWeb入门.XML入门;
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class XMLreader {
public static void main(String[] args) {
// String file = "d:/compiling_software/eclipse/eclipse/workspace/慕课网/src/从网页搭建入门JavaWeb/步骤三JavaWeb入门/XML入门/plan.xml";
String file = "src/从网页搭建入门JavaWeb/步骤三JavaWeb入门/XML入门/plan.xml";
SAXReader reader = new SAXReader();
try {
Document document = reader.read(file);
Element root = document.getRootElement();
List<Element> elements = root.elements("course");
for (Element ele : elements) {
Attribute att = ele.attribute("id");
String id = att.getText();
Element name = ele.element("course-name");
String course_name = name.getText();
Element hour = ele.element("class-hour");
String class_hour = hour.getText();
Element form = ele.element("exam-form");
String exam_form = form.getText();
System.out.println("课程ID:" + id);
System.out.println("课程名称:" + course_name);
System.out.println("课程课时:" + class_hour);
System.out.println("考核方式:" + exam_form);
}
} catch (DocumentException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
2. 从网页搭建入门JavaWeb
- 参与学习 人
- 提交作业 676 份
- 解答问题 9666 个
本阶段将从前端网页搭建入手,到Java Web基础,前后端结合助你完成Java Web小白的蜕变!
了解课程

恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星