XMLString class Reference

| API Docs for SAX and DOM |

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# XMLString Class Reference

Class for representing native character strings and handling common string operations. More...

Collaboration diagram for XMLString:

[legend]
List of all members.

## Static Public Methods

String concatenation functions
void | catString (char *const target, const char *const src)
| Concatenates two strings.
void | catString (XMLCh *const target, const XMLCh *const src)
| Concatenates two strings.
String comparison functions
int | compareIString (const char *const str1, const char *const str2)
| Lexicographically compares lowercase versions of `str1` and `str2` and returns a value indicating their relationship.
int | compareIString (const XMLCh *const str1, const XMLCh *const str2)
| Lexicographically compares lowercase versions of `str1` and `str2` and returns a value indicating their relationship.
int | compareNString (const char *const str1, const char *const str2, const unsigned int count)
| Lexicographically compares, at most, the first count characters in `str1` and `str2` and returns a value indicating the relationship between the substrings.
int | compareNString (const XMLCh *const str1, const XMLCh *const str2, const unsigned int count)
| Lexicographically compares, at most, the first count characters in `str1` and `str2` and returns a value indicating the relationship between the substrings.
int | compareNIString (const char *const str1, const char *const str2, const unsigned int count)
| Lexicographically compares, at most, the first count characters in `str1` and `str2` without regard to case and returns a value indicating the relationship between the substrings.
int | compareNIString (const XMLCh *const str1, const XMLCh *const str2, const unsigned int count)
| Lexicographically compares, at most, the first count characters in `str1` and `str2` without regard to case and returns a value indicating the relationship between the substrings.
int | compareString (const char *const str1, const char *const str2)
| Lexicographically compares `str1` and `str2` and returns a value indicating their relationship.
int | compareString (const XMLCh *const str1, const XMLCh *const str2)
| Lexicographically compares `str1` and `str2` and returns a value indicating their relationship.
bool | equals (const XMLCh *const str1, const XMLCh *const str2)
| compares `str1` and `str2`
bool | equals (const char *const str1, const char *const str2)
bool | regionMatches (const XMLCh *const str1, const int offset1, const XMLCh *const str2, const int offset2, const unsigned int charCount)
| Lexicographically compares `str1` and `str2` regions and returns true if they are equal, otherwise false.
bool | regionIMatches (const XMLCh *const str1, const int offset1, const XMLCh *const str2, const int offset2, const unsigned int charCount)
| Lexicographically compares `str1` and `str2` regions without regard to case and returns true if they are equal, otherwise false.
String copy functions
void | copyString (char *const target, const char *const src)
| Copies `src`, including the terminating null character, to the location specified by `target`.
void | copyString (XMLCh *const target, const XMLCh *const src)
| Copies `src`, including the terminating null character, to the location specified by `target`.
bool | copyNString (XMLCh *const target, const XMLCh *const src, const unsigned int maxChars)
| Copies `src`, upto a fixed number of characters, to the location specified by `target`.
Hash functions
unsigned int | hash (const char *const toHash, const unsigned int hashModulus)
| Hashes a string given a modulus.
unsigned int | hash (const XMLCh *const toHash, const unsigned int hashModulus)
| Hashes a string given a modulus.
unsigned int | hashN (const XMLCh *const toHash, const unsigned int numChars, const unsigned int hashModulus)
| Hashes a string given a modulus taking a maximum number of characters as the limit.
Search functions
int | indexOf (const char *const toSearch, const char ch)
| Provides the index of the first occurance of a character within a string.
int | indexOf (const XMLCh *const toSearch, const XMLCh ch)
| Provides the index of the first occurance of a character within a string.
int | indexOf (const char *const toSearch, const char chToFind, const unsigned int fromIndex)
| Provides the index of the first occurance of a character within a string starting from a given index.
int | indexOf (const XMLCh *const toSearch, const XMLCh chToFind, const unsigned int fromIndex)
| Provides the index of the first occurance of a character within a string starting from a given index.
int | lastIndexOf (const char *const toSearch, const char ch)
| Provides the index of the last occurance of a character within a string.
int | lastIndexOf (const XMLCh *const toSearch, const XMLCh ch)
| Provides the index of the last occurance of a character within a string.
int | lastIndexOf (const char *const toSearch, const char chToFind, const unsigned int fromIndex)
| Provides the index of the last occurance of a character within a string starting backward from a given index.
int | lastIndexOf (const XMLCh *const toSearch, const XMLCh ch, const unsigned int fromIndex)
| Provides the index of the last occurance of a character within a string starting backward from a given index.
Fixed size string movement
void | moveChars (XMLCh *const targetStr, const XMLCh *const srcStr, const unsigned int count)
| Moves X number of chars.
Substring function
void | subString (char *const targetStr, const char *const srcStr, const int startIndex, const int endIndex)
| Create a substring of a givend string.
void | subString (XMLCh *const targetStr, const XMLCh *const srcStr, const int startIndex, const int endIndex)
| Create a substring of a givend string.
Replication function
char * | replicate (const char *const toRep)
| Replicates a string NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed.
char * | replicate (const char *const toRep, MemoryManager *const manager)
XMLCh * | replicate (const XMLCh *const toRep)
| Replicates a string NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed.
XMLCh * | replicate (const XMLCh *const toRep, MemoryManager *const manager)
String query function
bool | startsWith (const char *const toTest, const char *const prefix)
| Tells if the sub-string appears within a string at the beginning.
bool | startsWith (const XMLCh *const toTest, const XMLCh *const prefix)
| Tells if the sub-string appears within a string at the beginning.
bool | startsWithI (const char *const toTest, const char *const prefix)
| Tells if the sub-string appears within a string at the beginning without regard to case.
bool | startsWithI (const XMLCh *const toTest, const XMLCh *const prefix)
| Tells if the sub-string appears within a string at the beginning without regard to case.
bool | endsWith (const XMLCh *const toTest, const XMLCh *const suffix)
| Tells if the sub-string appears within a string at the end.
const XMLCh * | findAny (const XMLCh *const toSearch, const XMLCh *const searchList)
| Tells if a string has any occurance of another string within itself.
XMLCh * | findAny (XMLCh *const toSearch, const XMLCh *const searchList)
| Tells if a string has any occurance of another string within itself.
int | patternMatch (const XMLCh *const toSearch, const XMLCh *const pattern)
| Tells if a string has pattern within itself.
unsigned int | stringLen (const char *const src)
| Get the length of the string.
unsigned int | stringLen (const XMLCh *const src)
| Get the length of the string.
bool | isValidNCName (const XMLCh *const name)
| Deprecated: please use XMLChar1_0::isValidNCName.
bool | isValidName (const XMLCh *const name)
| Deprecated: please use XMLChar1_0::isValidName.
bool | isValidEncName (const XMLCh *const name)
| Checks whether an name is a valid EncName.
bool | isValidQName (const XMLCh *const name)
| Deprecated: please use XMLChar1_0::isValidQName.
bool | isAlpha (XMLCh const theChar)
| Checks whether a character is within [a-zA-Z].
bool | isDigit (XMLCh const theChar)
| Checks whether a character is within [0-9].
bool | isAlphaNum (XMLCh const theChar)
| Checks whether a character is within [0-9a-zA-Z].
bool | isHex (XMLCh const theChar)
| Checks whether a character is within [0-9a-fA-F].
bool | isAllWhiteSpace (const XMLCh *const toCheck)
| Deprecated: please use XMLChar1_0::isAllWhiteSpace.
bool | isInList (const XMLCh *const toFind, const XMLCh *const enumList)
| Find is the string appears in the enum list.
Conversion functions
void | binToText (const unsigned int toFormat, char *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const unsigned int toFormat, XMLCh *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const unsigned long toFormat, char *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const unsigned long toFormat, XMLCh *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const long toFormat, char *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const long toFormat, XMLCh *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const int toFormat, char *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
void | binToText (const int toFormat, XMLCh *const toFill, const unsigned int maxChars, const unsigned int radix)
| Converts binary data to a text string based a given radix.
bool | textToBin (const XMLCh *const toConvert, unsigned int &toFill)
| Converts a string of decimal chars to a binary value.
int | parseInt (const XMLCh *const toConvert)
| Converts a string of decimal chars to a binary value.
void | cut (XMLCh *const toCutFrom, const unsigned int count)
| Cut leading chars from a string.
char * | transcode (const XMLCh *const toTranscode)
| Transcodes a string to native code-page.
char * | transcode (const XMLCh *const toTranscode, MemoryManager *const manager)
bool | transcode (const XMLCh *const toTranscode, char *const toFill, const unsigned int maxChars)
| Transcodes a string to native code-page.
XMLCh * | transcode (const char *const toTranscode)
| Transcodes a string to native code-page.
XMLCh * | transcode (const char *const toTranscode, MemoryManager *const manager)
bool | transcode (const char *const toTranscode, XMLCh *const toFill, const unsigned int maxChars)
| Transcodes a string to native code-page.
void | trim (char *const toTrim)
| Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.
void | trim (XMLCh *const toTrim)
| Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.
BaseRefVectorOf< XMLCh > * | tokenizeString (const XMLCh *const tokenizeSrc)
| Break a string into tokens with space as delimiter, and stored in a string vector.
Formatting functions
XMLCh * | makeUName (const XMLCh *const pszURI, const XMLCh *const pszName)
| Creates a UName from a URI and base name.
unsigned int | replaceTokens (XMLCh *const errText, const unsigned int maxChars, const XMLCh *const text1, const XMLCh *const text2, const XMLCh *const text3, const XMLCh *const text4)
| Internal function to perform token replacement for strings.
void | upperCase (XMLCh *const toUpperCase)
| Converts a string to uppercase.
void | lowerCase (XMLCh *const toLowerCase)
| Converts a string to lowercase.
bool | isWSReplaced (const XMLCh *const toCheck)
| Check if string is WhiteSpace:replace.
bool | isWSCollapsed (const XMLCh *const toCheck)
| Check if string is WhiteSpace:collapse.
void | replaceWS (XMLCh *const toConvert)
| Replace whitespace.
void | collapseWS (XMLCh *const toConvert)
| Collapse whitespace.
void | removeWS (XMLCh *const toConvert)
| Remove whitespace.
void | fixURI (const XMLCh *const str, XMLCh *const target)
| Fixes a platform dependent absolute path filename to standard URI form.
String Memory Management functions
void | release (char **buf)
| Release the parameter char string that was allocated by the implementation (i.e.the parser).
void | release (XMLCh **buf)
| Release the parameter XMLCh string that was allocated by the implementation (i.e.the parser).
void | release (XMLByte **buf)
| Release the parameter XMLByte string that was allocated by the implementation (i.e.the parser).

## Friends

class | XMLPlatformUtils

## Detailed Description

Class for representing native character strings and handling common string operations.

This class is Unicode compliant. This class is designed primarily for internal use, but due to popular demand, it is being made publicly available. Users of this class must understand that this is not an officially supported class. All public methods of this class are static functions.

## Member Function Documentation

void XMLString::binToText | ( | const int | toFormat,
|  | XMLCh *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const int | toFormat,
|  | char *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const long | toFormat,
|  | XMLCh *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const long | toFormat,
|  | char *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const unsigned long | toFormat,
|  | XMLCh *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const unsigned long | toFormat,
|  | char *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const unsigned int | toFormat,
|  | XMLCh *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::binToText | ( | const unsigned int | toFormat,
|  | char *const | toFill,
|  | const unsigned int | maxChars,
|  | const unsigned int | radix
| ) | `[static]`

Converts binary data to a text string based a given radix.

Parameters:

  toFormat | The beginning of the input string to convert
  toFill | The buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
  maxChars | The maximum number of output characters that can be accepted. If the result will not fit, it is an error.
  radix | The radix of the input data, based on which the conversion will be done

void XMLString::catString | ( | XMLCh *const | target,
|  | const XMLCh *const | src
| ) | `[static]`

Concatenates two strings.

`catString` appends `src` to `target` and terminates the resulting string with a null character. The initial character of `src` overwrites the terminating character of `target`. No overflow checking is performed when strings are copied or appended. The behavior of `catString` is undefined if source and destination strings overlap.

Parameters:

  target | Null-terminated destination string
  src | Null-terminated source string

void XMLString::catString | ( | char *const | target,
|  | const char *const | src
| ) | `[static]`

Concatenates two strings.

`catString` appends `src` to `target` and terminates the resulting string with a null character. The initial character of `src` overwrites the terminating character of `target` .

No overflow checking is performed when strings are copied or appended. The behavior of `catString` is undefined if source and destination strings overlap.

Parameters:

  target | Null-terminated destination string
  src | Null-terminated source string

void XMLString::collapseWS | ( | XMLCh *const | toConvert | ) | `[static]`

Collapse whitespace.

Parameters:

  toConvert | The string which needs to be whitespace collapsed. On return , this buffer also holds the converted string

int XMLString::compareIString | ( | const XMLCh *const | str1,
|  | const XMLCh *const | str2
| ) | `[static]`

Lexicographically compares lowercase versions of `str1` and `str2` and returns a value indicating their relationship.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareIString | ( | const char *const | str1,
|  | const char *const | str2
| ) | `[static]`

Lexicographically compares lowercase versions of `str1` and `str2` and returns a value indicating their relationship.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareNIString | ( | const XMLCh *const | str1,
|  | const XMLCh *const | str2,
|  | const unsigned int | count
| ) | `[static]`

Lexicographically compares, at most, the first count characters in `str1` and `str2` without regard to case and returns a value indicating the relationship between the substrings.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare
  count | The number of characters to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareNIString | ( | const char *const | str1,
|  | const char *const | str2,
|  | const unsigned int | count
| ) | `[static]`

Lexicographically compares, at most, the first count characters in `str1` and `str2` without regard to case and returns a value indicating the relationship between the substrings.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare
  count | The number of characters to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareNString | ( | const XMLCh *const | str1,
|  | const XMLCh *const | str2,
|  | const unsigned int | count
| ) | `[static]`

Lexicographically compares, at most, the first count characters in `str1` and `str2` and returns a value indicating the relationship between the substrings.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare
  count | The number of characters to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareNString | ( | const char *const | str1,
|  | const char *const | str2,
|  | const unsigned int | count
| ) | `[static]`

Lexicographically compares, at most, the first count characters in `str1` and `str2` and returns a value indicating the relationship between the substrings.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare
  count | The number of characters to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareString | ( | const XMLCh *const | str1,
|  | const XMLCh *const | str2
| ) | `[static]`

Lexicographically compares `str1` and `str2` and returns a value indicating their relationship.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

int XMLString::compareString | ( | const char *const | str1,
|  | const char *const | str2
| ) | `[static]`

Lexicographically compares `str1` and `str2` and returns a value indicating their relationship.

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare

Returns:
  The return value indicates the relation of `str1` to `str2` as follows Less than 0 means `str1` is less than `str2` Equal to 0 means `str1` is identical to `str2` Greater than 0 means `str1` is more than `str2`

bool XMLString::copyNString | ( | XMLCh *const | target,
|  | const XMLCh *const | src,
|  | const unsigned int | maxChars
| ) | `[static]`

Copies `src`, upto a fixed number of characters, to the location specified by `target`.

No overflow checking is performed when strings are copied or appended. The behavior of `copyNString` is undefined if the source and destination strings overlap.

Parameters:

  target | Destination string. The size of the buffer should atleast be 'maxChars + 1'.
  src | Null-terminated source string
  maxChars | The maximum number of characters to copy

void XMLString::copyString | ( | XMLCh *const | target,
|  | const XMLCh *const | src
| ) | `[static]`

Copies `src`, including the terminating null character, to the location specified by `target`.

No overflow checking is performed when strings are copied or appended. The behavior of `copyString` is undefined if the source and destination strings overlap.

Parameters:

  target | Destination string
  src | Null-terminated source string

void XMLString::copyString | ( | char *const | target,
|  | const char *const | src
| ) | `[static]`

Copies `src`, including the terminating null character, to the location specified by `target`.

No overflow checking is performed when strings are copied or appended. The behavior of strcpy is undefined if the source and destination strings overlap.

Parameters:

  target | Destination string
  src | Null-terminated source string

void XMLString::cut | ( | XMLCh *const | toCutFrom,
|  | const unsigned int | count
| ) | `[static]`

Cut leading chars from a string.

Parameters:

  toCutFrom | The string to cut chars from
  count | The count of leading chars to cut

bool XMLString::endsWith | ( | const XMLCh *const | toTest,
|  | const XMLCh *const | suffix
| ) | `[static]`

Tells if the sub-string appears within a string at the end.

Parameters:

  toTest | The string to test
  suffix | The sub-string that needs to be checked

Returns:
  Returns true if the sub-string was found at the end of `toTest`, else false

bool XMLString::equals | ( | const char *const | str1,
|  | const char *const | str2
| ) | `[static]`

bool XMLString::equals | ( | const XMLCh *const | str1,
|  | const XMLCh *const | str2
| ) | `[static]`

compares `str1` and `str2`

Parameters:

  str1 | Null-terminated string to compare
  str2 | Null-terminated string to compare

Returns:
  true if two strings are equal, false if not If one string is null, while the other is zero-length string, it is considered as equal.

XMLCh* XMLString::findAny | ( | XMLCh *const | toSearch,
|  | const XMLCh *const | searchList
| ) | `[static]`

Tells if a string has any occurance of another string within itself.

Parameters:

  toSearch | The string to be searched
  searchList | The sub-string to be searched within the string

Returns:
  Returns the pointer to the location where the sub-string was found, else returns 0

const XMLCh* XMLString::findAny | ( | const XMLCh *const | toSearch,
|  | const XMLCh *const | searchList
| ) | `[static]`

Tells if a string has any occurance of another string within itself.

Parameters:

  toSearch | The string to be searched
  searchList | The sub-string to be searched within the string

Returns:
  Returns the pointer to the location where the sub-string was found, else returns 0

void XMLString::fixURI | ( | const XMLCh *const | str,
|  | XMLCh *const | target
| ) | `[static]`

Fixes a platform dependent absolute path filename to standard URI form.

1. Windows: fix 'x:' to 'file:///x:' and convert any backslash to forward slash 2. UNIX: fix '/blah/blahblah' to 'file:///blah/blahblah'

Parameters:

  str | The string that has the absolute path filename
  target | The target string pre-allocated to store the fixed uri

unsigned int XMLString::hash | ( | const XMLCh *const | toHash,
|  | const unsigned int | hashModulus
| ) | `[static]`

Hashes a string given a modulus.

Parameters:

  toHash | The string to hash
  hashModulus | The divisor to be used for hashing

Returns:
  Returns the hash value

unsigned int XMLString::hash | ( | const char *const | toHash,
|  | const unsigned int | hashModulus
| ) | `[static]`

Hashes a string given a modulus.

Parameters:

  toHash | The string to hash
  hashModulus | The divisor to be used for hashing

Returns:
  Returns the hash value

unsigned int XMLString::hashN | ( | const XMLCh *const | toHash,
|  | const unsigned int | numChars,
|  | const unsigned int | hashModulus
| ) | `[static]`

Hashes a string given a modulus taking a maximum number of characters as the limit.

Parameters:

  toHash | The string to hash
  numChars | The maximum number of characters to consider for hashing
  hashModulus | The divisor to be used for hashing

Returns:
  Returns the hash value

int XMLString::indexOf | ( | const XMLCh *const | toSearch,
|  | const XMLCh | chToFind,
|  | const unsigned int | fromIndex
| ) | `[static]`

Provides the index of the first occurance of a character within a string starting from a given index.

Parameters:

  toSearch | The string to search
  chToFind | The character to search within the string
  fromIndex | The index to start search from

Returns:
  If found, returns the index of the character within the string, else returns -1.

int XMLString::indexOf | ( | const char *const | toSearch,
|  | const char | chToFind,
|  | const unsigned int | fromIndex
| ) | `[static]`

Provides the index of the first occurance of a character within a string starting from a given index.

Parameters:

  toSearch | The string to search
  chToFind | The character to search within the string
  fromIndex | The index to start earch from

Returns:
  If found, returns the index of the character within the string, else returns -1.

int XMLString::indexOf | ( | const XMLCh *const | toSearch,
|  | const XMLCh | ch
| ) | `[static]`

Provides the index of the first occurance of a character within a string.

Parameters:

  toSearch | The string to search
  ch | The character to search within the string

Returns:
  If found, returns the index of the character within the string, else returns -1.

int XMLString::indexOf | ( | const char *const | toSearch,
|  | const char | ch
| ) | `[static]`

Provides the index of the first occurance of a character within a string.

Parameters:

  toSearch | The string to search
  ch | The character to search within the string

Returns:
  If found, returns the index of the character within the string, else returns -1.

bool XMLString::isAllWhiteSpace | ( | const XMLCh *const | toCheck | ) | `[static]`

Deprecated: please use XMLChar1_0::isAllWhiteSpace.

Checks whether aa string contains only whitespace according to XML 1.0

Parameters:

  toCheck | the string to check

Returns:
  Returns true if it is, otherwise false

bool XMLString::isAlpha | ( | XMLCh const | theChar | ) | `[static]`

Checks whether a character is within [a-zA-Z].

Parameters:

  theChar | the character to check

Returns:
  Returns true if within the range, otherwise false

bool XMLString::isAlphaNum | ( | XMLCh const | theChar | ) | `[static]`

Checks whether a character is within [0-9a-zA-Z].

Parameters:

  theChar | the character to check

Returns:
  Returns true if within the range, otherwise false

bool XMLString::isDigit | ( | XMLCh const | theChar | ) | `[static]`

Checks whether a character is within [0-9].

Parameters:

  theChar | the character to check

Returns:
  Returns true if within the range, otherwise false

bool XMLString::isHex | ( | XMLCh const | theChar | ) | `[static]`

Checks whether a character is within [0-9a-fA-F].

Parameters:

  theChar | the character to check

Returns:
  Returns true if within the range, otherwise false

bool XMLString::isInList | ( | const XMLCh *const | toFind,
|  | const XMLCh *const | enumList
| ) | `[static]`

Find is the string appears in the enum list.

Parameters:

  toFind | the string to be found
  enumList | the list return true if found

bool XMLString::isValidEncName | ( | const XMLCh *const | name | ) | `[static]`

Checks whether an name is a valid EncName.

Parameters:

  name | The string to check its EncName validity

Returns:
  Returns true if name is EncName valid, otherwise false

bool XMLString::isValidName | ( | const XMLCh *const | name | ) | `[static]`

Deprecated: please use XMLChar1_0::isValidName.

Checks whether an name is a valid Name according to XML 1.0

Parameters:

  name | The string to check its Name validity

Returns:
  Returns true if name is Name valid, otherwise false

bool XMLString::isValidNCName | ( | const XMLCh *const | name | ) | `[static]`

Deprecated: please use XMLChar1_0::isValidNCName.

Checks whether an name is a valid NCName according to XML 1.0

Parameters:

  name | The string to check its NCName validity

Returns:
  Returns true if name is NCName valid, otherwise false

bool XMLString::isValidQName | ( | const XMLCh *const | name | ) | `[static]`

Deprecated: please use XMLChar1_0::isValidQName.

Checks whether an name is a valid QName according to XML 1.0

Parameters:

  name | The string to check its QName validity

Returns:
  Returns true if name is QName valid, otherwise false

bool XMLString::isWSCollapsed | ( | const XMLCh *const | toCheck | ) | `[static]`

Check if string is WhiteSpace:collapse.

Parameters:

  toCheck | The string which needs to be checked.

bool XMLString::isWSReplaced | ( | const XMLCh *const | toCheck | ) | `[static]`

Check if string is WhiteSpace:replace.

Parameters:

  toCheck | The string which needs to be checked.

int XMLString::lastIndexOf | ( | const XMLCh *const | toSearch,
|  | const XMLCh | ch,
|  | const unsigned int | fromIndex
| ) | `[static]`

Provides the index of the last occurance of a character within a string starting backward from a given index.

Parameters:

  toSearch | The string to search
  ch | The character to search within the string
  fromIndex | The index to start backward search from

Returns:
  If found, returns the index of the character within the string, else returns -1.

int XMLString::lastIndexOf | ( | const char *const | toSearch,
|  | const char | chToFind,
|  | const unsigned int | fromIndex
| ) | `[static]`

Provides the index of the last occurance of a character within a string starting backward from a given index.

Parameters:

  toSearch | The string to search
  chToFind | The character to search within the string
  fromIndex | The index to start backward search from

Returns:
  If found, returns the index of the character within the string, else returns -1.

int XMLString::lastIndexOf | ( | const XMLCh *const | toSearch,
|  | const XMLCh | ch
| ) | `[static]`

Provides the index of the last occurance of a character within a string.

Parameters:

  toSearch | The string to search
  ch | The character to search within the string

Returns:
  If found, returns the index of the character within the string, else returns -1.

int XMLString::lastIndexOf | ( | const char *const | toSearch,
|  | const char | ch
| ) | `[static]`

Provides the index of the last occurance of a character within a string.

Parameters:

  toSearch | The string to search
  ch | The character to search within the string

Returns:
  If found, returns the index of the character within the string, else returns -1.

void XMLString::lowerCase | ( | XMLCh *const | toLowerCase | ) | `[static]`

Converts a string to lowercase.

Parameters:

  toLowerCase | The string which needs to be converted to lowercase. On return, this buffer also holds the converted lowercase string

XMLCh* XMLString::makeUName | ( | const XMLCh *const | pszURI,
|  | const XMLCh *const | pszName
| ) | `[static]`

Creates a UName from a URI and base name.

It is in the form {url}name, and is commonly used internally to represent fully qualified names when namespaces are enabled.

Parameters:

  pszURI | The URI part of the name
  pszName | The base part of the name

Returns:
  Returns the complete formatted UName

void XMLString::moveChars | ( | XMLCh *const | targetStr,
|  | const XMLCh *const | srcStr,
|  | const unsigned int | count
| ) | `[static]`

Moves X number of chars.

Parameters:

  targetStr | The string to copy the chars to
  srcStr | The string to copy the chars from
  count | The number of chars to move

int XMLString::parseInt | ( | const XMLCh *const | toConvert | ) | `[static]`

Converts a string of decimal chars to a binary value.

Note that leading and trailng whitespace is legal and will be ignored,

Only one and either of (+,-) after the leading whitespace, before any other characters are allowed.

but the remainder must be all decimal digits.

Parameters:

  toConvert | The string of digits to convert

int XMLString::patternMatch | ( | const XMLCh *const | toSearch,
|  | const XMLCh *const | pattern
| ) | `[static]`

Tells if a string has pattern within itself.

Parameters:

  toSearch | The string to be searched
  pattern | The pattern to be searched within the string

Returns:
  Returns index to the location where the pattern was found, else returns -1

bool XMLString::regionIMatches | ( | const XMLCh *const | str1,
|  | const int | offset1,
|  | const XMLCh *const | str2,
|  | const int | offset2,
|  | const unsigned int | charCount
| ) | `[static]`

Lexicographically compares `str1` and `str2` regions without regard to case and returns true if they are equal, otherwise false.

A substring of `str1` is compared to a substring of `str2`. The result is true if these substrings represent identical character sequences. The substring of `str1` to be compared begins at offset1 and has length charCount. The substring of `str2` to be compared begins at offset2 and has length charCount. The result is false if and only if at least one of the following is true: offset1 is negative. offset2 is negative. offset1+charCount is greater than the length of str1. offset2+charCount is greater than the length of str2. There is some nonnegative integer k less than charCount such that: str1.charAt(offset1+k) != str2.charAt(offset2+k)

Parameters:

  str1 | Null-terminated string to compare
  offset1 | Starting offset of str1
  str2 | Null-terminated string to compare
  offset2 | Starting offset of str2
  charCount | The number of characters to compare

Returns:
  true if the specified subregion of `str1` exactly matches the specified subregion of `str2>`; false otherwise.

bool XMLString::regionMatches | ( | const XMLCh *const | str1,
|  | const int | offset1,
|  | const XMLCh *const | str2,
|  | const int | offset2,
|  | const unsigned int | charCount
| ) | `[static]`

Lexicographically compares `str1` and `str2` regions and returns true if they are equal, otherwise false.

A substring of `str1` is compared to a substring of `str2`. The result is true if these substrings represent identical character sequences. The substring of `str1` to be compared begins at offset1 and has length charCount. The substring of `str2` to be compared begins at offset2 and has length charCount. The result is false if and only if at least one of the following is true: offset1 is negative. offset2 is negative. offset1+charCount is greater than the length of str1. offset2+charCount is greater than the length of str2. There is some nonnegative integer k less than charCount such that: str1.charAt(offset1+k) != str2.charAt(offset2+k)

Parameters:

  str1 | Null-terminated string to compare
  offset1 | Starting offset of str1
  str2 | Null-terminated string to compare
  offset2 | Starting offset of str2
  charCount | The number of characters to compare

Returns:
  true if the specified subregion of `str1` exactly matches the specified subregion of `str2>`; false otherwise.

void XMLString::release | ( | XMLByte ** | buf | ) | `[static]`

Release the parameter XMLByte string that was allocated by the implementation (i.e.the parser).

The implementation will call operator delete[] and then turn the string to a null pointer.

Parameters:

  buf | The string to be deleted and become a null pointer.

void XMLString::release | ( | XMLCh ** | buf | ) | `[static]`

Release the parameter XMLCh string that was allocated by the implementation (i.e.the parser).

The implementation will call operator delete[] and then turn the string to a null pointer.

Parameters:

  buf | The string to be deleted and become a null pointer.

void XMLString::release | ( | char ** | buf | ) | `[static]`

Release the parameter char string that was allocated by the implementation (i.e.the parser).

The implementation will call operator delete[] and then turn the string to a null pointer.

Parameters:

  buf | The string to be deleted and become a null pointer.

void XMLString::removeWS | ( | XMLCh *const | toConvert | ) | `[static]`

Remove whitespace.

Parameters:

  toConvert | The string which needs to be whitespace removed. On return , this buffer also holds the converted string

unsigned int XMLString::replaceTokens | ( | XMLCh *const | errText,
|  | const unsigned int | maxChars,
|  | const XMLCh *const | text1,
|  | const XMLCh *const | text2,
|  | const XMLCh *const | text3,
|  | const XMLCh *const | text4
| ) | `[static]`

Internal function to perform token replacement for strings.

Parameters:

  errText | The text (NULL terminated) where the replacement is to be done. The size of this buffer should be 'maxChars + 1' to account for the final NULL.
  maxChars | The size of the output buffer, i.e. the maximum number of characters that it will hold. If the result is larger, it will be truncated.
  text1 | Replacement text-one
  text2 | Replacement text-two
  text3 | Replacement text-three
  text4 | Replacement text-four

Returns:
  Returns the count of characters that are outputted

void XMLString::replaceWS | ( | XMLCh *const | toConvert | ) | `[static]`

Replace whitespace.

Parameters:

  toConvert | The string which needs to be whitespace replaced. On return , this buffer also holds the converted string

XMLCh * XMLString::replicate | ( | const XMLCh *const | toRep,
|  | MemoryManager *const | manager
| ) | `[static]`

XMLCh * XMLString::replicate | ( | const XMLCh *const | toRep | ) | `[static]`

Replicates a string NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed.

You can call XMLString::release to release this returned buffer.

Parameters:

  toRep | The string to replicate

Returns:
  Returns a pointer to the replicated string

See also:
  XMLString::release(XMLCh**)

char* XMLString::replicate | ( | const char *const | toRep,
|  | MemoryManager *const | manager
| ) | `[static]`

char* XMLString::replicate | ( | const char *const | toRep | ) | `[static]`

Replicates a string NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed.

You can call XMLString::release to release this returned buffer.

Parameters:

  toRep | The string to replicate

Returns:
  Returns a pointer to the replicated string

See also:
  XMLString::release(char**)

bool XMLString::startsWith | ( | const XMLCh *const | toTest,
|  | const XMLCh *const | prefix
| ) | `[static]`

Tells if the sub-string appears within a string at the beginning.

Parameters:

  toTest | The string to test
  prefix | The sub-string that needs to be checked

Returns:
  Returns true if the sub-string was found at the beginning of `toTest`, else false

bool XMLString::startsWith | ( | const char *const | toTest,
|  | const char *const | prefix
| ) | `[static]`

Tells if the sub-string appears within a string at the beginning.

Parameters:

  toTest | The string to test
  prefix | The sub-string that needs to be checked

Returns:
  Returns true if the sub-string was found at the beginning of `toTest`, else false

bool XMLString::startsWithI | ( | const XMLCh *const | toTest,
|  | const XMLCh *const | prefix
| ) | `[static]`

Tells if the sub-string appears within a string at the beginning without regard to case.

Parameters:

  toTest | The string to test
  prefix | The sub-string that needs to be checked

Returns:
  Returns true if the sub-string was found at the beginning of `toTest`, else false

bool XMLString::startsWithI | ( | const char *const | toTest,
|  | const char *const | prefix
| ) | `[static]`

Tells if the sub-string appears within a string at the beginning without regard to case.

Parameters:

  toTest | The string to test
  prefix | The sub-string that needs to be checked

Returns:
  Returns true if the sub-string was found at the beginning of `toTest`, else false

unsigned int XMLString::stringLen | ( | const XMLCh *const | src | ) | `[static]`

Get the length of the string.

Parameters:

  src | The string whose length is to be determined

Returns:
  Returns the length of the string

unsigned int XMLString::stringLen | ( | const char *const | src | ) | `[static]`

Get the length of the string.

Parameters:

  src | The string whose length is to be determined

Returns:
  Returns the length of the string

void XMLString::subString | ( | XMLCh *const | targetStr,
|  | const XMLCh *const | srcStr,
|  | const int | startIndex,
|  | const int | endIndex
| ) | `[static]`

Create a substring of a givend string.

The substring begins at the specified beginIndex and extends to the character at index endIndex - 1.

Parameters:

  targetStr | The string to copy the chars to
  srcStr | The string to copy the chars from
  startIndex | beginning index, inclusive.
  endIndex | the ending index, exclusive.

void XMLString::subString | ( | char *const | targetStr,
|  | const char *const | srcStr,
|  | const int | startIndex,
|  | const int | endIndex
| ) | `[static]`

Create a substring of a givend string.

The substring begins at the specified beginIndex and extends to the character at index endIndex - 1.

Parameters:

  targetStr | The string to copy the chars to
  srcStr | The string to copy the chars from
  startIndex | beginning index, inclusive.
  endIndex | the ending index, exclusive.

bool XMLString::textToBin | ( | const XMLCh *const | toConvert,
|  | unsigned int & | toFill
| ) | `[static]`

Converts a string of decimal chars to a binary value.

Note that leading and trailng whitespace is legal and will be ignored but the remainder must be all decimal digits.

Parameters:

  toConvert | The string of digits to convert
  toFill | The unsigned int value to fill with the converted value.

BaseRefVectorOf<XMLCh>* XMLString::tokenizeString | ( | const XMLCh *const | tokenizeSrc | ) | `[static]`

Break a string into tokens with space as delimiter, and stored in a string vector.

The caller owns the string vector that is returned, and is responsible for deleting it.

Parameters:

  tokenizeSrc | String to be tokenized

Returns:
  a vector of all the tokenized string

bool XMLString::transcode | ( | const char *const | toTranscode,
|  | XMLCh *const | toFill,
|  | const unsigned int | maxChars
| ) | `[static]`

Transcodes a string to native code-page.

Parameters:

  toTranscode | The string tobe transcoded
  toFill | The buffer that is filled with the transcoded value. The size of this buffer should atleast be 'maxChars + 1'.
  maxChars | The maximum number of characters that the output buffer can hold (not including the null, which is why toFill should be at least maxChars+1.).

Returns:
  Returns true if successful, false if there was an error

XMLCh* XMLString::transcode | ( | const char *const | toTranscode,
|  | MemoryManager *const | manager
| ) | `[static]`

XMLCh* XMLString::transcode | ( | const char *const | toTranscode | ) | `[static]`

Transcodes a string to native code-page.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

Parameters:

  toTranscode | The string to be transcoded

Returns:
  Returns the transcoded string

See also:
  XMLString::release(char**)

bool XMLString::transcode | ( | const XMLCh *const | toTranscode,
|  | char *const | toFill,
|  | const unsigned int | maxChars
| ) | `[static]`

Transcodes a string to native code-page.

Be aware that when transcoding to an external encoding, that each Unicode char can create multiple output bytes. So you cannot assume a one to one correspondence of input chars to output bytes.

Parameters:

  toTranscode | The string tobe transcoded
  toFill | The buffer that is filled with the transcoded value. The size of this buffer should atleast be 'maxChars + 1'.
  maxChars | The maximum number of bytes that the output buffer can hold (not including the null, which is why toFill should be at least maxChars+1.).

Returns:
  Returns true if successful, false if there was an error

char* XMLString::transcode | ( | const XMLCh *const | toTranscode,
|  | MemoryManager *const | manager
| ) | `[static]`

char* XMLString::transcode | ( | const XMLCh *const | toTranscode | ) | `[static]`

Transcodes a string to native code-page.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

Parameters:

  toTranscode | The string to be transcoded

Returns:
  Returns the transcoded string

See also:
  XMLString::release(XMLCh**)

void XMLString::trim | ( | XMLCh *const | toTrim | ) | `[static]`

Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.

Parameters:

  toTrim | The string to be trimmed. On return this contains the trimmed string

void XMLString::trim | ( | char *const | toTrim | ) | `[static]`

Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.

Parameters:

  toTrim | The string to be trimmed. On return this contains the trimmed string

void XMLString::upperCase | ( | XMLCh *const | toUpperCase | ) | `[static]`

Converts a string to uppercase.

Parameters:

  toUpperCase | The string which needs to be converted to uppercase. On return, this buffer also holds the converted uppercase string

## Friends And Related Function Documentation

friend class XMLPlatformUtils`[friend]`

The documentation for this class was generated from the following file:

- XMLString.hpp

Copyright © 2000 The Apache Software Foundation. All Rights Reserved.