The NS_StringGetData function gives the caller access to the string's internal buffer. This is a low-level API.
#include "nsStringAPI.h"
PRUint32 NS_StringGetData(
const nsAString& aString,
const PRUnichar** aData,
PRBool* aTerminated
);
nsAString instance to inspect. The NS_StringGetData function returns the length of aData, measured in storage units (bytes).
PRUint32 CountChar(const nsAString& str, PRUnichar c)
{
const PRUnichar* data;
PRUint32 len = NS_StringGetData(str, &data);
PRUint32 count = 0;
for (PRUint32 i = 0; i < len; ++i)
{
if (data[i] == c)
++count;
}
return count;
}
This function was frozen for Mozilla 1.7. See bug 239123 for details.