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 );
nsACString instance to inspect.
The NS_CStringGetData function returns the length of aData, measured in storage units (bytes).
// 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;
}
This function was finalized for Mozilla 1.7. See bug 239123 for details.