java.lang.Object
javax.swing.text.html.parser.DTD
所有已实现的接口:
DTDConstants

public class DTD extends Object implements DTDConstants
SGML DTD 的表示。 DTD 描述了一种文档语法,用于解析 HTML 文档。它包含元素及其属性的列表以及 DTD 中定义的实体列表。
参见:
  • 字段详细信息

    • name

      public String  name
      DTD 的名称
    • elements

      public Vector <Element > elements
      元素向量
    • elementHash

      public Hashtable <String ,Element > elementHash
      哈希表包含元素的名称和对应的元素。
    • entityHash

      public Hashtable <Object ,Entity > entityHash
      哈希表包含一个Object和对应的Entity
    • pcdata

      public final Element  pcdata
      pcdata对应的元素。
    • html

      public final Element  html
      html对应的元素。
    • meta

      public final Element  meta
      meta对应的元素。
    • base

      public final Element  base
      base对应的元素。
    • isindex

      public final Element  isindex
      isindex对应的元素。
    • body

      public final Element  body
      body对应的元素。
    • applet

      public final Element  applet
      小程序对应的元素。
    • param

      public final Element  param
      param对应的元素。
    • p

      public final Element  p
      p对应的元素。
    • title

      public final Element  title
      标题对应的元素。
    • FILE_VERSION

      public static final int FILE_VERSION
      文件的版本
      参见:
  • 构造方法详细信息

    • DTD

      protected DTD(String  name)
      创建具有指定名称的新 DTD。
      参数:
      name - 名称,作为新 DTD 的 String
  • 方法详情

    • getName

      public String  getName()
      获取 DTD 的名称。
      返回:
      DTD 的名称
    • getEntity

      public Entity  getEntity(String  name)
      按名称获取实体。
      参数:
      name - 实体名称
      返回:
      Entity对应name String
    • getEntity

      public Entity  getEntity(int ch)
      获取角色实体。
      参数:
      ch - 角色
      返回:
      Entity 对应于 ch 字符
    • getElement

      public Element  getElement(String  name)
      按名称获取元素。如果该元素不存在,则创建一个新元素。
      参数:
      name - 请求的 String
      返回:
      name对应的Element,可能是新建的
    • getElement

      public Element  getElement(int index)
      通过索引获取元素。
      参数:
      index - 请求的索引
      返回:
      Element对应index
    • defineEntity

      public Entity  defineEntity(String  name, int type, char[] data)
      定义一个实体。如果nametypedata指定的Entity存在,则返回;否则将创建并返回一个新的 Entity
      参数:
      name - Entity 的名称作为 String
      type - Entity 的类型
      data - Entity 的数据
      返回:
      请求的 Entity 或未找到的新 Entity
    • defineElement

      public Element  defineElement(String  name, int type, boolean omitStart, boolean omitEnd, ContentModel  content, BitSet  exclusions, BitSet  inclusions, AttributeList  atts)
      返回匹配指定参数的Element。如果不存在,则创建并返回一个新的。
      参数:
      name - Element 的名称
      type - Element 的类型
      omitStart - true 如果应该省略开始
      omitEnd - true 如果应省略结尾
      content - ContentModel
      exclusions - 元素内不得出现的元素集
      inclusions - 元素内部可能出现的元素集
      atts - AttributeList 指定 Element
      返回:
      指定的Element
    • defineAttributes

      public void defineAttributes(String  name, AttributeList  atts)
      定义 Element 的属性。
      参数:
      name - Element 的名称
      atts - AttributeList 指定 Element
    • defEntity

      public Entity  defEntity(String  name, int type, int ch)
      创建并返回一个字符 Entity
      参数:
      name - 实体的名称
      type - 实体的类型
      ch - 实体的值(字符)
      返回:
      新角色Entity
    • defEntity

      protected Entity  defEntity(String  name, int type, String  str)
      创建并返回一个 Entity
      参数:
      name - 实体的名称
      type - 实体的类型
      str - 实体的数据部分
      返回:
      新的Entity
    • defElement

      protected Element  defElement(String  name, int type, boolean omitStart, boolean omitEnd, ContentModel  content, String [] exclusions, String [] inclusions, AttributeList  atts)
      创建并返回一个 Element
      参数:
      name - 元素的名称
      type - 元素的类型
      omitStart - true 如果元素不需要起始标记
      omitEnd - true 如果元素不需要结束标记
      content - 元素的内容
      exclusions - 必须从元素内容中排除的元素
      inclusions - 可以作为元素内容包含的元素
      atts - 元素的属性
      返回:
      新的Element
    • defAttributeList

      protected AttributeList  defAttributeList(String  name, int type, int modifier, String  value, String  values, AttributeList  atts)
      创建并返回一个响应新属性的 AttributeList
      参数:
      name - 属性的名称
      type - 属性的类型
      modifier - 属性的修饰符
      value - 属性的默认值
      values - 属性的允许值(多个值可以用“|”分隔)
      atts - 元素的前一个属性;放置到 AttributeList.next ,创建一个链表
      返回:
      新的AttributeList
    • defContentModel

      protected ContentModel  defContentModel(int type, Object  obj, ContentModel  next)
      创建并返回一个新的内容模型。
      参数:
      type - 新内容模型的类型
      obj - 内容模型的内容
      next - 指向下一个内容模型的指针
      返回:
      新的ContentModel
    • toString

      public String  toString()
      返回此 DTD 的字符串表示形式。
      重写:
      toString 在类 Object
      返回:
      此 DTD 的字符串表示形式
    • putDTDHash

      public static void putDTDHash(String  name, DTD  dtd)
      将名称和适当的 DTD 放入哈希表。
      参数:
      name - DTD 的名称
      dtd - DTD
    • getDTD

      public static DTD  getDTD(String  name) throws IOException
      返回具有指定 name 的 DTD。如果不存在具有该名称的 DTD,则创建并返回一个。名称中的任何大写字符都将转换为小写。
      参数:
      name - DTD 的名称
      返回:
      对应于 name 的 DTD
      抛出:
      IOException - 如果发生 I/O 错误
    • read

      public void read(DataInputStream  in) throws IOException
      从存档格式重新创建 DTD。
      参数:
      in - 要读取的 DataInputStream
      抛出:
      IOException - 如果发生 I/O 错误