Summary
The NS_CStringGetData function gives the caller read access to the string's internal buffer.
#include "nsStringAPI.h" PRUint32 NS_CStringGetData( const nsACString& aString, const char** aData, PRBool* aTerminated = nsnull );
Parameters
- aString
-  [in] A nsACStringinstance to inspect.
- aData
- [out] A const pointer to the string's internal buffer.
- aTerminated
- [out] This optional result parameter indicates whether or not aData is null-terminated. It may be null if the caller is not interested in this information.
Return Values
The NS_CStringGetData function returns the length of aData, measured in storage units (bytes).
Example Code
// Count the number of times a particular character appears in a string.
PRUint32 CountChar(const nsACString& str, char c)
{
  const char* data;
  PRUint32 len = NS_CStringGetData(str, &data);
  PRUint32 count = 0;
  for (PRUint32 i = 0; i < len; ++i)
  {
    if (data[i] == c)
      ++count;
  }
  return count;
}
History
This function was finalized for Mozilla 1.7. See bug 239123 for details.