从服务器响应中解析 UTF8 字符串
parsing utf8 string from server response
我已经在某些设备上实现了应用程序,该应用程序正在处理从服务器发送接收数据。来自服务器的数据通常采用以下形式:
"1;username;someInteger;"
解析很容易,我使用strtok
你可以想象的那样从该字符串中检索单个值,例如:1
、username
和 someInteger
。
但是现在可能会出现服务器将 unicode 字符串作为username
发送给我的情况。
我认为好主意是使用编码为 UTF-8 字符串的用户名(我说得对吗?你有什么建议 - 我应该如何从上面的字符串解析它?例如,使用什么符号作为分隔符(例如,代替";"),或者使用哪些函数从上面的字符串中提取username
?
由于这是一些嵌入式设备,我想避免在那里安装一些第三方库(这甚至可能是不可能的),所以更"纯粹"的方式会更可取。
UTF-8 中的字符';'
与 ASCII 中的字符相同,因为两种编码中的前 127 个字符是相同的。这意味着您仍然可以使用 strtok
在';'
上拆分。
UTF8 的本质是你几乎不需要做任何事情。ASCII 字符仍然编码为它们始终相同的 ASCII 字节,因此如果您只是继续使用分号分隔符,则根本不需要执行任何操作。
相关文章:
- MSVC UTF8字符串编码使用了不正确的代码点
- 在 C++ 中将 utf8 wstring 转换为窗口中的字符串
- C++ 检查 UTF8 字符串包含指定的字符
- 将STD :: U8String复制到一个UTF8字符的C风格字符串中
- 使用REGEX以UTF8格式过滤字符串
- 如何使用std :: codecvt_utf8_utf16在没有任何字符串类的情况下转换为UTF8
- 转换一个带有UTF8 WSTRING控制台的装饰的字符串
- 如何转换为C 中的UTF8字符串
- C#回调接收UTF8字符串
- C++将ASII转义的unicode字符串转换为utf8字符串
- 作为utf8字符串的utf16字符串的长度
- UTF8 字符串到整数
- 从服务器响应中解析 UTF8 字符串
- 是一个C++字符串类,我可以用来处理 UTF8 字符串
- 火鸟在“UTF8 字符串转换为 wstring”时崩溃
- 在android NDK jni中加密和解密utf8字符串
- Boost Spirit(X3)符号表产生UTF8字符串
- 在窗口中用UTF8字符串打开文件名
- 用c++将UTF8字符串转换为UTF16字符串
- c++字符串擦除不适用于UTF8字符串,我可以使用什么库