add utf8_is_valid

This commit is contained in:
Glenn Maynard
2003-05-18 04:36:03 +00:00
parent 68038cdf49
commit 01a6404711
2 changed files with 24 additions and 8 deletions
+15
View File
@@ -770,6 +770,21 @@ int utf8_get_char_len (const char *pp)
return -1; return -1;
} }
bool utf8_is_valid(const CString &str)
{
unsigned pos = 0;
while(pos < str.size())
{
int len = utf8_get_char_len(str.c_str() + pos);
if(len == -1)
return false;
pos += len;
}
return true;
}
wchar_t utf8_get_char (const char *p) wchar_t utf8_get_char (const char *p)
{ {
int len = utf8_get_char_len(p); int len = utf8_get_char_len(p);
+1
View File
@@ -164,6 +164,7 @@ CString WcharToUTF8( wchar_t c );
wstring CStringToWstring(const CString &str); wstring CStringToWstring(const CString &str);
wchar_t utf8_get_char (const char *p); wchar_t utf8_get_char (const char *p);
int utf8_get_char_len (const char *p); int utf8_get_char_len (const char *p);
bool utf8_is_valid(const CString &str);
// Splits a CString into an CStringArray according the Deliminator. // Splits a CString into an CStringArray according the Deliminator.
void split( void split(