JavaTM Platform
Standard Ed. 6

org.w3c.dom
インタフェース CharacterData

すべてのスーパーインタフェース:
Node
既知のサブインタフェースの一覧:
CDATASection, Comment, Text, Text

public interface CharacterData
extends Node

CharacterData インタフェースは、属性とメソッドのセットを追加して Node を拡張することにより、DOM 内の文字データにアクセスできるようにします。こうしたセットについては、これらを実際に使用するオブジェクトの項で説明するのではなく、ここでまとめて説明しておきます。直接 CharacterData に対応する DOM オブジェクトは存在しません。 一方、Text などのその他のオブジェクトは CharacterData からインタフェースを継承します。このインタフェースに含まれるすべての offsets0 で始まります。

DOMString インタフェースの解説でも触れましたが、DOM に含まれるテキスト文字列は UTF-16、すなわち 16 ビットを 1 単位とするシーケンスで表現されます。次の説明では、「16 ビット単位」という表現で、CharacterData へのインデックス付けが 16 ビット単位で行われるということを示します。

「Document Object Model (DOM) Level 3 Core Specification」を参照してください。


フィールドの概要
 
インタフェース org.w3c.dom.Node から継承されたフィールド
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
メソッドの概要
 void appendData(String arg)
          ノードの文字データの末尾に文字列を追加します。
 void deleteData(int offset, int count)
          ノードから指定範囲の 16 ビット単位を削除します。
 String getData()
          このインタフェースを実装するノードの文字データです。
 int getLength()
          以下の data メソッドおよび substringData メソッドを介して取得可能な 16 ビット単位の数です。
 void insertData(int offset, String arg)
          指定された 16 ビット単位のオフセットに文字列を挿入します。
 void replaceData(int offset, int count, String arg)
          指定された文字列で、指定された 16 ビット単位のオフセット以降の文字を置き換えます。
 void setData(String data)
          このインタフェースを実装するノードの文字データです。
 String substringData(int offset, int count)
          ノードから所定のデータ範囲を抽出します。
 
インタフェース org.w3c.dom.Node から継承されたメソッド
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

メソッドの詳細

getData

String getData()
               throws DOMException
このインタフェースを実装するノードの文字データです。通常、DOM 実装は、CharacterData ノードに格納できるデータの量を制限しません。しかし、あるノードのデータ全体が単一の DOMString に収まらない場合は、実装の制限が有効になります。この場合、ユーザーは substringData を呼び出し、データを適切なサイズに分割して取得できます。

例外:
DOMException - DOMSTRING_SIZE_ERR:返される文字数が多すぎて 実装プラットフォーム上の DOMString 変数に収まらない場合

setData

void setData(String data)
             throws DOMException
このインタフェースを実装するノードの文字データです。通常、DOM 実装は、CharacterData ノードに格納できるデータの量を制限しません。しかし、あるノードのデータ全体が単一の DOMString に収まらない場合は、実装の制限が有効になります。この場合、ユーザーは substringData を呼び出し、データを適切なサイズに分割して取得できます。

例外:
DOMException - NO_MODIFICATION_ALLOWED_ERR:ノードが読み取り専用の場合

getLength

int getLength()
以下の data メソッドおよび substringData メソッドを介して取得可能な 16 ビット単位の数です。CharacterData ノードが空の場合、値はゼロになります。


substringData

String substringData(int offset,
                     int count)
                     throws DOMException
ノードから所定のデータ範囲を抽出します。

パラメータ:
offset - 抽出する部分文字列の開始オフセット
count - 抽出する 16 ビット単位の数
戻り値:
指定された部分文字列。offsetcount の合計が length を超える場合、 データの末尾までに含まれるすべての 16 ビット単位が返される
例外:
DOMException - INDEX_SIZE_ERR:指定された offset が負の値であるか、data 内の 16 ビット単位の数より大きい場合。 または、指定された count が負の値である 場合
DOMSTRING_SIZE_ERR:テキストの指定範囲が DOMString に収まらない場合

appendData

void appendData(String arg)
                throws DOMException
ノードの文字データの末尾に文字列を追加します。成功した場合、data により、指定された dataDOMString を連結したものにアクセスできます。

パラメータ:
arg - 追加される DOMString
例外:
DOMException - NO_MODIFICATION_ALLOWED_ERR:このノードが読み取り専用の場合

insertData

void insertData(int offset,
                String arg)
                throws DOMException
指定された 16 ビット単位のオフセットに文字列を挿入します。

パラメータ:
offset - 挿入位置の文字オフセット
arg - 挿入される DOMString
例外:
DOMException - INDEX_SIZE_ERR:指定された offset が負の値であるか、data 内の 16 ビット単位の数より大きい 場合
NO_MODIFICATION_ALLOWED_ERR:このノードが読み取り専用の場合

deleteData

void deleteData(int offset,
                int count)
                throws DOMException
ノードから指定範囲の 16 ビット単位を削除します。成功した場合、datalength に変更が反映されます。

パラメータ:
offset - 削除を開始する位置のオフセット
count - 削除する 16 ビット単位の数。offsetcount の合計が length を超える場合、offset からデータの末尾までに 存在するすべての 16 ビット単位が削除される
例外:
DOMException - INDEX_SIZE_ERR:指定された offset が負の値であるか、data 内の 16 ビット単位の数より大きい 場合。または、指定された count が負の値である 場合
NO_MODIFICATION_ALLOWED_ERR:このノードが読み取り専用の場合

replaceData

void replaceData(int offset,
                 int count,
                 String arg)
                 throws DOMException
指定された文字列で、指定された 16 ビット単位のオフセット以降の文字を置き換えます。

パラメータ:
offset - 置き換えを開始する位置のオフセット
count - 置き換える 16 ビット単位の数。offsetcount の合計が length を超える場合、offset からデータの末尾までに存在するすべての 16 ビット単位が 置き換えられる (その範囲に対して remove メソッドと append メソッドを連続して呼び出した場合と 同じ結果)
arg - 所定の範囲と置き換えられる DOMString
例外:
DOMException - INDEX_SIZE_ERR:指定された offset が負の値であるか、data 内の 16 ビット単位の数より大きい 場合。または、指定された count が負の値である 場合
NO_MODIFICATION_ALLOWED_ERR:このノードが読み取り専用の場合

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。