成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

XML Notebook

darkbug / 1470人閱讀

摘要:不使用外部聲明屬性單雙引號皆可大小寫敏感大小寫不敏感必須有根元素實體引用實體任何包含數(shù)據(jù)的項實體中要使用轉(zhuǎn)義字符無論寫什么,都當(dāng)作普通文本逐行掃描,邊掃描邊解析,速度快不能對節(jié)點進行修改構(gòu)造,方便遍歷和修改對于大文件,內(nèi)存壓力大獲取子

XML: EXtensible Markup Language
1. Basic Syntax 1.1 Processing instruction
 format

e.g.

Must have:

version

Optional:

standalone: yes/no : 不使用外部聲明

encoding: utf-8/gbk ...

1.2 element & attribute

element: ...

屬性:單雙引號皆可

1.3 大小寫敏感

HTML:大小寫不敏感

1.4 必須有根元素 1.5 實體引用
實體:任何包含數(shù)據(jù)的項

實體中要使用轉(zhuǎn)義字符:

< <
> >
& &
' "
" "
1.6 CDATA block
format: 
無論text寫什么,都當(dāng)作普通文本
2. Parsers 2.1 SAX & DOM

SAX: simple API for XML

Pros: 逐行掃描,邊掃描邊解析,速度快

Cons: 不能對節(jié)點進行修改

DOM: Document Object Model

pros: 構(gòu)造Tree,方便遍歷和修改

cons: 對于大文件,內(nèi)存壓力大

DOM4J:

DOM4J is an open source, Java-based library to parse XML documents.
DOM4J works with DOM, SAX, XPath, and XSLT. It can parse large XML documents with very low memory footprint.
3. DOM4J 3.1 SAXReader:
        SAXReader reader = new SAXReader();
        Document doc = reader.read(new File(filename));
3.2 Document
    Element root = doc.getRootElement();
3.3 Element

Element element(String name); // 獲取name子元素

List elements();

String getName();

String getText();

Attribute attribute(int index / String name);

3.4 Attribute

String getName();

String getValue();

3.5 Write 3.5.1 Create Document
            Document DocumentHelper.createDocument();
            Document的addElement():只能調(diào)用一次
                Element root = doc.addElement("project");
3.5.2 Element

addElement(String name);

addAttribute(String name, String val);

addText(String txt);

3.5.3 Output
            XMLWriter writer = new XMLWriter();
            FileOutputStream fos = new FileOutputStream("new.xml");
            writer.setOutputStream(fos);
            writer.write(doc);
            writer.close();
3.6 XPath

absolute path: starts with /

relative path: step/step

. current node
.. the parent of current node
/ Selection starts from the root node
// 任意位置的某個節(jié)點
@ 選擇屬性

Predicates:

[predicates]
/books/book[1] 選擇第一個book子元素
/books/book[last()] 選擇最后一個book子元素
/books/book[@lang] 選擇有l(wèi)ang屬性的子元素
/books/book[@lang="eng"] 選擇有l(wèi)ang屬性為eng的子元素
/books/book[price] 選擇有price子元素的book
/books/book/price[.>35.00] 選擇大于35的/books/book/的price子元素

通配符:

* 任何元素
@* 任何屬性
node() 任何類型的節(jié)點
//* 所有元素
/*/* 所有第二層元素

DOM4J對XPath的支持:

List list = doc.selectNodes("...");

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/110385.html

相關(guān)文章

  • 裝扮你的Jupyter

    摘要:顯示中文此外,單獨拎出來的另一個原因是,還有一個中文顯示的問題。首先我們來看可以使用的字體你應(yīng)該看到下面這樣的表格然后找到支持中文的字體名,然后設(shè)置的默認(rèn)字體當(dāng)然,你可以添加到剛才的配置中,或者采用這個博客的方法。 又到擺脫重復(fù)工作,換個心情,然而并沒有軟用的時間了。這次,教大家如何搭建一個好看的jupyter環(huán)境。 安裝Jupyter 先來展示一下我的環(huán)境 python: 3.5....

    leo108 評論0 收藏0
  • 用進度條助您特征工程一臂之力

    摘要:在此探討的是級別以下的數(shù)據(jù)之上的分析,有基于的分布式任務(wù)精度條,主要環(huán)境是下基于包的分析和特征工程任務(wù)。當(dāng)然,首先我們得載入模塊,在中使用帶的基于顯示的進度條前,請務(wù)必檢查是否安裝模塊。 在具體的分析或者特征工程之中,經(jīng)常會遇到處理時間很久的問題,當(dāng)然必要的優(yōu)化是必須的。但是顯然,數(shù)據(jù)量上升,計算量過大后,處理時間是必須的此。時,如果有個可以幫助您查看任務(wù)進度的進度條,必定可以提高你抓...

    darry 評論0 收藏0
  • 連接遠程jupyter notebook ----windows環(huán)境

    摘要:連接遠程環(huán)境作為一個小巧的,使用方便的編輯器,受到許多初學(xué)者的喜愛考慮到本地配置的限制,往往想要調(diào)用遠程服務(wù)器中的,下文記錄下查閱網(wǎng)上資料嘗試的步驟遠程服務(wù)器中安裝本文使用的遠程服務(wù)器是,系首先,你的服務(wù)器中需要安裝,,此處不贅述由 連接遠程jupyter notebook ----windows環(huán)境 jupyter notebook作為一個小巧的,使用方便的python編輯器,受到許...

    pepperwang 評論0 收藏0
  • tkinter中ttk.Notebook實現(xiàn)多頁面切換

    摘要:使用可實現(xiàn)實現(xiàn)多頁面切換直接上代碼華文行楷請點擊微軟雅黑請點擊微軟雅黑人生苦短,我用使我更加強大設(shè)置左上角小圖標(biāo)設(shè)置窗口不可變 使用ttk.Notebook可實現(xiàn)實現(xiàn)多頁面切換 直接上代碼: import tkinter as tkfrom tkinter import ttkfrom ...

    不知名網(wǎng)友 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<