日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

有道单词本导出xml转换.

發(fā)布時間:2023/12/13 综合教程 34 生活家
生活随笔 收集整理的這篇文章主要介紹了 有道单词本导出xml转换. 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

有道單詞本導(dǎo)出后生成的是xml, 不方便看, 于是需要解析一下.

xml解析都忘了, 順便學(xué)習(xí)一下.

用到兩個類 , 如下:

第一個:就是死的那幾步.

import java.io.File;
import java.io.IOException;
import java.util.HashMap;

import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

import org.xml.sax.SAXException;
/**
 * 有道單詞本單詞生成.
 * @author lvxingang
 */
public class XmlParser {
	public static void main(String[] args) {
			// 初始化與解析
			try {
				SaxHandler handler = new SaxHandler();
				SAXParserFactory saxparserfactory = SAXParserFactory.newInstance();
				SAXParser saxparser = saxparserfactory.newSAXParser();
				saxparser.parse(new File("youdao.xml"), handler);
			} catch (Exception e) {
				e.printStackTrace();
			}
	}
}

第二個類.是DefaultHandler類.

public class SaxHandler extends DefaultHandler {
	// 當(dāng)前元素中的數(shù)據(jù)
		private String currentData;
		int i = 0;
		// 取得元素數(shù)據(jù)
		public void characters(char[] ch, int start, int length)
				throws SAXException {
			currentData = new String(ch, start, length);
		}
		// 在解析元素開始時調(diào)用
		public void startElement(String uri, String localName, String name,
				Attributes attributes) throws SAXException {
			if(name.equalsIgnoreCase("word")){
				System.out.print("單詞: ");
			}else if(name.equalsIgnoreCase("trans")){
				System.out.println("翻譯:");
			}else if(name.equalsIgnoreCase("phonetic")){
				System.out.print("音標(biāo): ");
			}else if(name.equalsIgnoreCase("item")){
				System.out.println();
				System.out.println("第"+i+"個單詞.");
				i++;
			}
		}
		// 在解析元素結(jié)束時調(diào)用
		public void endElement(String uri, String localName, String name)
				throws SAXException {
			if(name.equalsIgnoreCase("word")||name.equalsIgnoreCase("trans")||name.equalsIgnoreCase("phonetic"))
			System.out.println(" " + this.currentData);
		}
}

完成.

效果對比如下:

下一步再弄把它寫到一個文本中, 應(yīng)該很簡單的. IO也忘了................啊............

總結(jié)

以上是生活随笔為你收集整理的有道单词本导出xml转换.的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。