亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? node.java

?? < JavaME核心技術最佳實踐>>的全部源代碼
?? JAVA
字號:
/* Copyright (c) 2002,2003, Stefan Haustein, Oberhausen, Rhld., Germany * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or * sell copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The  above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * IN THE SOFTWARE. */package org.kxml2.kdom;import java.util.*;import java.io.*;import org.xmlpull.v1.*;/** A common base class for Document and Element, also used for    storing XML fragments. */public class Node { //implements XmlIO{    public static final int DOCUMENT = 0;    public static final int ELEMENT = 2;    public static final int TEXT = 4;    public static final int CDSECT = 5;    public static final int ENTITY_REF = 6;    public static final int IGNORABLE_WHITESPACE = 7;    public static final int PROCESSING_INSTRUCTION = 8;    public static final int COMMENT = 9;    public static final int DOCDECL = 10;    protected Vector children;    protected StringBuffer types;    /** inserts the given child object of the given type at the    given index. */    public void addChild(int index, int type, Object child) {        if (child == null)            throw new NullPointerException();        if (children == null) {            children = new Vector();            types = new StringBuffer();        }        if (type == ELEMENT) {            if (!(child instanceof Element))                throw new RuntimeException("Element obj expected)");            ((Element) child).setParent(this);        }        else if (!(child instanceof String))            throw new RuntimeException("String expected");        children.insertElementAt(child, index);        types.insert(index, (char) type);    }    /** convenience method for addChild (getChildCount (), child) */    public void addChild(int type, Object child) {        addChild(getChildCount(), type, child);    }    /** Builds a default element with the given properties. Elements    should always be created using this method instead of the    constructor in order to enable construction of specialized    subclasses by deriving custom Document classes. Please note:    For no namespace, please use Xml.NO_NAMESPACE, null is not a    legal value. Currently, null is converted to Xml.NO_NAMESPACE,    but future versions may throw an exception. */    public Element createElement(String namespace, String name) {        Element e = new Element();        e.namespace = namespace == null ? "" : namespace;        e.name = name;        return e;    }    /** Returns the child object at the given index.  For child        elements, an Element object is returned. For all other child        types, a String is returned. */    public Object getChild(int index) {        return children.elementAt(index);    }    /** Returns the number of child objects */    public int getChildCount() {        return children == null ? 0 : children.size();    }    /** returns the element at the given index. If the node at the    given index is a text node, null is returned */    public Element getElement(int index) {        Object child = getChild(index);        return (child instanceof Element) ? (Element) child : null;    }    /** Returns the element with the given namespace and name. If the        element is not found, or more than one matching elements are        found, an exception is thrown. */    public Element getElement(String namespace, String name) {        int i = indexOf(namespace, name, 0);        int j = indexOf(namespace, name, i + 1);        if (i == -1 || j != -1)            throw new RuntimeException(                "Element {"                    + namespace                    + "}"                    + name                    + (i == -1 ? " not found in " : " more than once in ")                    + this);        return getElement(i);    }    /* returns "#document-fragment". For elements, the element name is returned         public String getName() {        return "#document-fragment";    }        /** Returns the namespace of the current element. For Node        and Document, Xml.NO_NAMESPACE is returned.         public String getNamespace() {        return "";    }        public int getNamespaceCount () {    	return 0;    }        /** returns the text content if the element has text-only    content. Throws an exception for mixed content        public String getText() {            StringBuffer buf = new StringBuffer();        int len = getChildCount();            for (int i = 0; i < len; i++) {            if (isText(i))                buf.append(getText(i));            else if (getType(i) == ELEMENT)                throw new RuntimeException("not text-only content!");        }            return buf.toString();    }    */    /** Returns the text node with the given index or null if the node        with the given index is not a text node. */    public String getText(int index) {        return (isText(index)) ? (String) getChild(index) : null;    }    /** Returns the type of the child at the given index. Possible     types are ELEMENT, TEXT, COMMENT, and PROCESSING_INSTRUCTION */    public int getType(int index) {        return types.charAt(index);    }    /** Convenience method for indexOf (getNamespace (), name,        startIndex).         public int indexOf(String name, int startIndex) {        return indexOf(getNamespace(), name, startIndex);    }    */    /** Performs search for an element with the given namespace and    name, starting at the given start index. A null namespace    matches any namespace, please use Xml.NO_NAMESPACE for no    namespace).  returns -1 if no matching element was found. */    public int indexOf(String namespace, String name, int startIndex) {        int len = getChildCount();        for (int i = startIndex; i < len; i++) {            Element child = getElement(i);            if (child != null                && name.equals(child.getName())                && (namespace == null || namespace.equals(child.getNamespace())))                return i;        }        return -1;    }    public boolean isText(int i) {        int t = getType(i);        return t == TEXT || t == IGNORABLE_WHITESPACE || t == CDSECT;    }    /** Recursively builds the child elements from the given parser    until an end tag or end document is found.         The end tag is not consumed. */    public void parse(XmlPullParser parser)        throws IOException, XmlPullParserException {        boolean leave = false;        do {            int type = parser.getEventType();               //         System.out.println(parser.getPositionDescription());                        switch (type) {                case XmlPullParser.START_TAG :                    {                        Element child =                            createElement(                                parser.getNamespace(),                                parser.getName());                        //    child.setAttributes (event.getAttributes ());                        addChild(ELEMENT, child);                        // order is important here since                         // setparent may perform some init code!                        child.parse(parser);                        break;                    }                case XmlPullParser.END_DOCUMENT :                case XmlPullParser.END_TAG :                    leave = true;                    break;                default :                    if (parser.getText() != null)                        addChild(                            type == XmlPullParser.ENTITY_REF ? TEXT : type,                            parser.getText());                    else if (                        type == XmlPullParser.ENTITY_REF                            && parser.getName() != null) {                        addChild(ENTITY_REF, parser.getName());                    }                    parser.nextToken();            }        }        while (!leave);    }    /** Removes the child object at the given index */    public void removeChild(int idx) {        children.removeElementAt(idx);        /***  Modification by HHS - start ***/        //      types.deleteCharAt (index);        /***/        int n = types.length() - 1;        for (int i = idx; i < n; i++)            types.setCharAt(i, types.charAt(i + 1));        types.setLength(n);        /***  Modification by HHS - end   ***/    }    /* returns a valid XML representation of this Element including    	attributes and children.     public String toString() {        try {            ByteArrayOutputStream bos =                new ByteArrayOutputStream();            XmlWriter xw =                new XmlWriter(new OutputStreamWriter(bos));            write(xw);            xw.close();            return new String(bos.toByteArray());        }        catch (IOException e) {            throw new RuntimeException(e.toString());        }    }    */    /** Writes this node to the given XmlWriter. For node and document,        this method is identical to writeChildren, except that the        stream is flushed automatically. */    public void write(XmlSerializer writer) throws IOException {        writeChildren(writer);        writer.flush();    }    /** Writes the children of this node to the given XmlWriter. */    public void writeChildren(XmlSerializer writer) throws IOException {        if (children == null)            return;        int len = children.size();        for (int i = 0; i < len; i++) {            int type = getType(i);            Object child = children.elementAt(i);            switch (type) {                case ELEMENT :                     ((Element) child).write(writer);                    break;                case TEXT :                    writer.text((String) child);                    break;                case IGNORABLE_WHITESPACE :                    writer.ignorableWhitespace((String) child);                    break;                case CDSECT :                    writer.cdsect((String) child);                    break;                case COMMENT :                    writer.comment((String) child);                    break;                case ENTITY_REF :                    writer.entityRef((String) child);                    break;                case PROCESSING_INSTRUCTION :                    writer.processingInstruction((String) child);                    break;                case DOCDECL :                    writer.docdecl((String) child);                    break;                default :                    throw new RuntimeException("Illegal type: " + type);            }        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色八戒一区二区三区| 国产成人精品一区二区三区网站观看| 精品国产第一区二区三区观看体验| 91浏览器在线视频| av一区二区三区在线| 不卡大黄网站免费看| 色综合久久中文综合久久97| a级高清视频欧美日韩| 97se亚洲国产综合自在线观| 99精品视频免费在线观看| 91视频91自| 欧美精品在线视频| 日韩免费看的电影| 久久久久久久国产精品影院| 久久久久99精品国产片| 亚洲国产精品精华液ab| 中文字幕在线观看不卡| 一区二区三区91| 奇米在线7777在线精品| 国产成人在线网站| 色综合欧美在线| 欧美一区二区三区视频免费播放| 精品卡一卡二卡三卡四在线| 欧美一区二区三区播放老司机| 91精品国产91综合久久蜜臀| 欧美大片日本大片免费观看| 久久精品人人做人人综合| 中文字幕av一区二区三区| 亚洲一区二区在线观看视频| 日本v片在线高清不卡在线观看| 国产一区二三区| 色欧美片视频在线观看| 欧美一区在线视频| ...av二区三区久久精品| 午夜激情久久久| 懂色av噜噜一区二区三区av| 欧美自拍偷拍午夜视频| 久久综合九色综合97_久久久| 欧美国产日韩a欧美在线观看| 亚洲高清三级视频| 懂色av中文字幕一区二区三区 | 91麻豆精品国产91| 久久伊人中文字幕| 午夜精品123| 99视频精品免费视频| 精品日韩在线观看| 五月婷婷综合网| 91在线看国产| 国产日韩在线不卡| 久色婷婷小香蕉久久| 色系网站成人免费| 国产精品美女久久久久aⅴ| 蜜桃视频一区二区三区在线观看| 91电影在线观看| 亚洲国产精华液网站w| 蜜臀av国产精品久久久久| 色老综合老女人久久久| 国产午夜亚洲精品理论片色戒| 美女一区二区三区| 欧美日韩成人综合| 亚洲成人激情综合网| 色综合色狠狠综合色| 中文字幕日本乱码精品影院| 国产高清一区日本| 久久午夜老司机| 久久99精品国产麻豆不卡| 91精品国产色综合久久久蜜香臀| 亚洲一区二区精品久久av| 在线看日韩精品电影| 亚洲精品久久久蜜桃| 91免费视频大全| 中文字幕一区二区三| av动漫一区二区| 国产精品国产三级国产专播品爱网| 国产成人精品影视| 国产精品毛片久久久久久| 暴力调教一区二区三区| 国产精品久久精品日日| 97se亚洲国产综合自在线不卡 | 在线视频国内自拍亚洲视频| 国产精品激情偷乱一区二区∴| 成人国产精品视频| 亚洲色图制服诱惑| 日本丰满少妇一区二区三区| 一区二区不卡在线播放 | 国产精品 日产精品 欧美精品| 欧美一级久久久久久久大片| 青青草97国产精品免费观看无弹窗版| 91麻豆精品国产自产在线| 免费成人美女在线观看.| 日韩女优毛片在线| 国产精品一区二区三区99| 精品国产麻豆免费人成网站| 麻豆精品久久精品色综合| ww久久中文字幕| 国产一区中文字幕| 国产精品全国免费观看高清| 一本色道久久加勒比精品| 亚洲成人动漫av| 欧美精品一区二| 99re这里只有精品首页| 亚洲成a人v欧美综合天堂下载 | 中文字幕一区免费在线观看| 99久久精品国产一区| 午夜精品福利视频网站| 精品国产精品一区二区夜夜嗨| 国产91丝袜在线播放九色| 亚洲自拍偷拍av| 久久精品一二三| 在线观看视频一区| 国产老女人精品毛片久久| 亚洲少妇中出一区| 日韩视频在线一区二区| 菠萝蜜视频在线观看一区| 亚洲地区一二三色| 国产亚洲综合在线| 91麻豆精品国产综合久久久久久| 东方aⅴ免费观看久久av| 天堂在线亚洲视频| 国产精品拍天天在线| 日韩三级伦理片妻子的秘密按摩| 成人精品视频一区二区三区| 日韩精品免费专区| 亚洲欧洲精品一区二区三区不卡| 日韩午夜激情av| 欧美午夜精品理论片a级按摩| 国产呦精品一区二区三区网站| 亚洲一二三专区| 国产精品久久看| 精品国产成人系列| 欧美精品丝袜久久久中文字幕| www.欧美.com| 国产乱对白刺激视频不卡| 蜜桃视频第一区免费观看| 亚洲成av人影院| 一区二区三区中文字幕精品精品| 欧美激情一二三区| 久久综合色鬼综合色| 日韩精品一区在线观看| 欧美丰满美乳xxx高潮www| 欧美性色黄大片手机版| 不卡av在线网| 成人在线视频首页| 国产91精品在线观看| 国产精品影视天天线| 麻豆高清免费国产一区| 亚洲综合一区在线| 亚洲狠狠爱一区二区三区| ...中文天堂在线一区| 国产夜色精品一区二区av| 日韩视频国产视频| 日韩一区二区三区免费看 | 日韩一区二区三区av| 在线免费观看日本一区| 欧美专区亚洲专区| 欧美最新大片在线看| 欧美系列在线观看| 在线亚洲一区二区| 成人av免费在线| 91丨porny丨国产入口| 成人精品视频一区| 91美女片黄在线观看| 欧美综合亚洲图片综合区| 欧美性欧美巨大黑白大战| 91成人免费网站| 8x8x8国产精品| 欧美成人a∨高清免费观看| 久久亚洲精品国产精品紫薇| 久久精品欧美一区二区三区不卡 | 欧美夫妻性生活| 91精品国产美女浴室洗澡无遮挡| 欧美一区二区福利在线| 日韩欧美你懂的| 国产精品美女久久久久高潮| 一区二区三区不卡视频| 免费成人在线播放| 成人av在线资源网| 色爱区综合激月婷婷| 日韩精品一区二区三区中文不卡 | 91女厕偷拍女厕偷拍高清| 欧美无砖专区一中文字| 精品欧美一区二区久久| 中文字幕一区二区三区四区 | 北条麻妃国产九九精品视频| 欧美中文字幕一区| 欧美成人精品福利| 亚洲欧美一区二区三区国产精品| 亚洲国产毛片aaaaa无费看| 韩国一区二区在线观看| 91在线精品一区二区| 538prom精品视频线放| 精品入口麻豆88视频| 欧美极品另类videosde| 亚洲h动漫在线| 成人不卡免费av| 日韩免费视频线观看| 亚洲激情在线激情| 高清久久久久久| 欧美电影免费观看高清完整版| 亚洲精品网站在线观看|