项目中使用了mmkv库,但在中文路径始下终无法初始化成功。
经排查,mmkv初始化的路径,只能接受utf-8格式的字符串,其他格式的带中文的字符串,都会乱码。
如何确定字符串是什么格式的
在VS调试中,可以在监视中,字符串变量后+逗号,
+窗口调试参数。
下图中所示,s8
即转成utf-8
显示字符串,如果加参数之后,变量显示变成乱码,则证明不是utf-8
编码。
保证字符串编码为utf-8
编码,则初始化就不会有问题。
附:VS窗口调试参数
参数 | 说明 |
---|---|
s | 显示ANSI字符集数据 |
su | 显示UNICODE字符集数据 |
s8 | 显示UTF-8字符集数据 |
d,i | 有符号的十进制显示数据 |
u | 无符号的十进制显示数据 |
o | 显示八进制数据 |
x | 显示十六进制数据 |
c | 显示数字表示的字符 |
hr | 查看Windows HRESULT解释 |
wm | 将数字转换为windows messge的宏显示 |
wc | 窗口类标志 |
数字 | 显示数组的指定元素的个数 |