黑马程序员_王康 java利用DOM4J解析XML文件

<?xml version="1.0" encoding="gb2312"?>
<books>
	<book isbn="7506342605">
		<name>《水浒传》</name>
		<price>80</price>
		<author>施耐庵</author>
		<year>元末</year>
	</book>
	<book isbn="7020008720">
		<name>《西游记》</name>
		<price>90</price>
		<author>吴承恩</author>
		<year>明代</year>
	</book>
	<book isbn="7111103033">
		<name>《三国演义》</name>
		<price>75</price>
		<author>罗贯中</author>
		<year>元末</year>
	</book>
	<book isbn="7807074930">
		<name>《红楼梦》</name>
		<price>79</price>
		<author>曹雪芹</author>
		<year>清代</year>
	</book>
</books>
package test;

import java.io.File;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
 * 利用DOM4J解析XML文件
 * @author 黑马_王康
 *
 */
public class TestDOM4J {

	public static void main(String args[]) {
		long start = System.currentTimeMillis();
		try {
			// 取得SAX解析器
			SAXReader reader = new SAXReader();

			// 解析文件
			File file = new File("src/books.xml");
			Document doc = reader.read(file);

			// 取得根节点
			Element root = doc.getRootElement();

			// 取得子节点列表
			for (int i = 0; i < root.nodeCount(); i++) {
				// 取得某一个子节点
				Element book = (Element) root.node(i);

				// 取得属性值
				String isbn = book.attributeValue("isbn");
				System.out.print(isbn);

				String name = book.node(0).getText();
				String price = book.node(1).getText();
				String author = book.node(2).getText();
				String year = book.node(3).getText();
				System.out.print("\t" + name);
				System.out.print("\t" + price);
				System.out.print("\t" + author);
				System.out.println("\t" + year);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		long end = System.currentTimeMillis();
		System.out.println(end - start);
	}
}


以下是在51单片机中使用OLED显示“张玉树,王康笼,王鹏”的代码: ```c #include <reg52.h> #include <intrins.h> #define OLED_SCL P2_1 #define OLED_SDA P2_0 void delay_ms(unsigned int ms) { unsigned int i, j; for (i = 0; i < ms; i++) for (j = 0; j < 114; j++); } void OLED_WriteCmd(unsigned char cmd) { unsigned char i; OLED_SCL = 0; for (i = 0; i < 8; i++) { OLED_SDA = (cmd & 0x80) >> 7; OLED_SCL = 1; OLED_SCL = 0; cmd <<= 1; } } void OLED_WriteData(unsigned char dat) { unsigned char i; OLED_SCL = 0; for (i = 0; i < 8; i++) { OLED_SDA = (dat & 0x80) >> 7; OLED_SCL = 1; OLED_SCL = 0; dat <<= 1; } } void OLED_Init() { OLED_WriteCmd(0xAE); // 关闭OLED显示 OLED_WriteCmd(0x00); // 设置低列地址 OLED_WriteCmd(0x10); // 设置高列地址 OLED_WriteCmd(0x40); // 设置起始行地址 OLED_WriteCmd(0xB0); // 设置页地址 OLED_WriteCmd(0x81); // 对比度设置 OLED_WriteCmd(0xFF); // 亮度调节 OLED_WriteCmd(0xA1); // 设置段重定向 OLED_WriteCmd(0xA6); // 正常显示 OLED_WriteCmd(0xA8); // 多路复用设置 OLED_WriteCmd(0x3F); // 多路复用设置 OLED_WriteCmd(0xC8); // 垂直扫描设置 OLED_WriteCmd(0xD3); // 设置显示偏移 OLED_WriteCmd(0x00); // 设置显示偏移 OLED_WriteCmd(0xD5); // 设置显示时钟分频 OLED_WriteCmd(0x80); // 设置显示时钟分频 OLED_WriteCmd(0xD9); // 设置预充电周期 OLED_WriteCmd(0xF1); // 设置预充电周期 OLED_WriteCmd(0xDA); // 设置COM硬件引脚配置 OLED_WriteCmd(0x12); // 设置COM硬件引脚配置 OLED_WriteCmd(0xDB); // 设置VCOMH OLED_WriteCmd(0x40); // 设置VCOMH OLED_WriteCmd(0xAF); // 打开OLED显示 } void OLED_ShowString(unsigned char x, unsigned char y, unsigned char *str) { unsigned char i = 0; while (str[i] != '\0') { OLED_WriteCmd(0xB0 + y); OLED_WriteCmd(((x & 0xF0) >> 4) | 0x10); OLED_WriteCmd((x & 0x0F) | 0x01); for (; str[i] != '\0' && i < 16; i++) { OLED_WriteData(str[i]); x++; } if (str[i] == '\0') break; y++; x = 0; } } void main() { OLED_Init(); OLED_ShowString(0, 0, "张玉树,王康笼,王鹏"); while (1); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值