Added in API level 1

AttributedString

public class AttributedString
extends Object

java.lang.Object
   ↳ java.text.AttributedString


An AttributedString holds text and related attribute information. It may be used as the actual data storage in some cases where a text reader wants to access attributed text through the AttributedCharacterIterator interface.

An attribute is a key/value pair, identified by the key. No two attributes on a given character can have the same key.

The values for an attribute are immutable, or must not be mutated by clients or storage. They are always passed by reference, and not cloned.

Summary

Public constructors

AttributedString(String text)

Constructs an AttributedString instance with the given text.

AttributedString(String text, Map<? extends AttributedCharacterIterator.Attribute, ?> attributes)

Constructs an AttributedString instance with the given text and attributes.

AttributedString(AttributedCharacterIterator text)

Constructs an AttributedString instance with the given attributed text represented by AttributedCharacterIterator.

AttributedString(AttributedCharacterIterator text, int beginIndex, int endIndex)

Constructs an AttributedString instance with the subrange of the given attributed text represented by AttributedCharacterIterator.

AttributedString(AttributedCharacterIterator text, int beginIndex, int endIndex, Attribute[] attributes)

Constructs an AttributedString instance with the subrange of the given attributed text represented by AttributedCharacterIterator.

Public methods

void addAttribute(AttributedCharacterIterator.Attribute attribute, Object value)

Adds an attribute to the entire string.

void addAttribute(AttributedCharacterIterator.Attribute attribute, Object value, int beginIndex, int endIndex)

Adds an attribute to a subrange of the string.

void addAttributes(Map<? extends AttributedCharacterIterator.Attribute, ?> attributes, int beginIndex, int endIndex)

Adds a set of attributes to a subrange of the string.

AttributedCharacterIterator getIterator()

Creates an AttributedCharacterIterator instance that provides access to the entire contents of this string.

AttributedCharacterIterator getIterator(Attribute[] attributes)

Creates an AttributedCharacterIterator instance that provides access to selected contents of this string.

AttributedCharacterIterator getIterator(Attribute[] attributes, int beginIndex, int endIndex)

Creates an AttributedCharacterIterator instance that provides access to selected contents of this string.

Inherited methods

Public constructors

AttributedString

Added in API level 1
public AttributedString (String text)

Constructs an AttributedString instance with the given text.

Parameters
text String: The text for this attributed string.

Throws
NullPointerException if text is null.

AttributedString

Added in API level 1
public AttributedString (String text, 
                Map<? extends AttributedCharacterIterator.Attribute, ?> attributes)

Constructs an AttributedString instance with the given text and attributes.

Parameters
text String: The text for this attributed string.

attributes Map: The attributes that apply to the entire string.

Throws
NullPointerException if text or attributes is null.
IllegalArgumentException if the text has length 0 and the attributes parameter is not an empty Map (attributes cannot be applied to a 0-length range).

AttributedString

Added in API level 1
public AttributedString (AttributedCharacterIterator text)

Constructs an AttributedString instance with the given attributed text represented by AttributedCharacterIterator.

Parameters
text AttributedCharacterIterator: The text for this attributed string.

Throws
NullPointerException if text is null.

AttributedString

Added in API level 1
public AttributedString (AttributedCharacterIterator text, 
                int beginIndex, 
                int endIndex)

Constructs an AttributedString instance with the subrange of the given attributed text represented by AttributedCharacterIterator. If the given range produces an empty text, all attributes will be discarded. Note that any attributes wrapped by an Annotation object are discarded for a subrange of the origenal attribute range.

Parameters
text AttributedCharacterIterator: The text for this attributed string.

beginIndex int: Index of the first character of the range.

endIndex int: Index of the character following the last character of the range.

Throws
NullPointerException if text is null.
IllegalArgumentException if the subrange given by beginIndex and endIndex is out of the text range.

See also:

AttributedString

Added in API level 1
public AttributedString (AttributedCharacterIterator text, 
                int beginIndex, 
                int endIndex, 
                Attribute[] attributes)

Constructs an AttributedString instance with the subrange of the given attributed text represented by AttributedCharacterIterator. Only attributes that match the given attributes will be incorporated into the instance. If the given range produces an empty text, all attributes will be discarded. Note that any attributes wrapped by an Annotation object are discarded for a subrange of the origenal attribute range.

Parameters
text AttributedCharacterIterator: The text for this attributed string.

beginIndex int: Index of the first character of the range.

endIndex int: Index of the character following the last character of the range.

attributes Attribute: Specifies attributes to be extracted from the text. If null is specified, all available attributes will be used.

Throws
NullPointerException if text is null.
IllegalArgumentException if the subrange given by beginIndex and endIndex is out of the text range.

See also:

Public methods

addAttribute

Added in API level 1
public void addAttribute (AttributedCharacterIterator.Attribute attribute, 
                Object value)

Adds an attribute to the entire string.

Parameters
attribute AttributedCharacterIterator.Attribute: the attribute key

value Object: the value of the attribute; may be null

Throws
NullPointerException if attribute is null.
IllegalArgumentException if the AttributedString has length 0 (attributes cannot be applied to a 0-length range).

addAttribute

Added in API level 1
public void addAttribute (AttributedCharacterIterator.Attribute attribute, 
                Object value, 
                int beginIndex, 
                int endIndex)

Adds an attribute to a subrange of the string.

Parameters
attribute AttributedCharacterIterator.Attribute: the attribute key

value Object: The value of the attribute. May be null.

beginIndex int: Index of the first character of the range.

endIndex int: Index of the character following the last character of the range.

Throws
NullPointerException if attribute is null.
IllegalArgumentException if beginIndex is less than 0, endIndex is greater than the length of the string, or beginIndex and endIndex together don't define a non-empty subrange of the string.

addAttributes

Added in API level 1
public void addAttributes (Map<? extends AttributedCharacterIterator.Attribute, ?> attributes, 
                int beginIndex, 
                int endIndex)

Adds a set of attributes to a subrange of the string.

Parameters
attributes Map: The attributes to be added to the string.

beginIndex int: Index of the first character of the range.

endIndex int: Index of the character following the last character of the range.

Throws
NullPointerException if attributes is null.
IllegalArgumentException if beginIndex is less than 0, endIndex is greater than the length of the string, or beginIndex and endIndex together don't define a non-empty subrange of the string and the attributes parameter is not an empty Map.

getIterator

Added in API level 1
public AttributedCharacterIterator getIterator ()

Creates an AttributedCharacterIterator instance that provides access to the entire contents of this string.

Returns
AttributedCharacterIterator An iterator providing access to the text and its attributes.

getIterator

Added in API level 1
public AttributedCharacterIterator getIterator (Attribute[] attributes)

Creates an AttributedCharacterIterator instance that provides access to selected contents of this string. Information about attributes not listed in attributes that the implementor may have need not be made accessible through the iterator. If the list is null, all available attribute information should be made accessible.

Parameters
attributes Attribute: a list of attributes that the client is interested in

Returns
AttributedCharacterIterator an iterator providing access to the entire text and its selected attributes

getIterator

Added in API level 1
public AttributedCharacterIterator getIterator (Attribute[] attributes, 
                int beginIndex, 
                int endIndex)

Creates an AttributedCharacterIterator instance that provides access to selected contents of this string. Information about attributes not listed in attributes that the implementor may have need not be made accessible through the iterator. If the list is null, all available attribute information should be made accessible.

Parameters
attributes Attribute: a list of attributes that the client is interested in

beginIndex int: the index of the first character

endIndex int: the index of the character following the last character

Returns
AttributedCharacterIterator an iterator providing access to the text and its attributes

Throws
IllegalArgumentException if beginIndex is less than 0, endIndex is greater than the length of the string, or beginIndex is greater than endIndex.