请教:Berkeley DB如何支持中文路径?

Kaile 2011-09-26 02:11:32
用Berkeley DB ,英文路径正常,今天发现识别不了中文路径 , 帮助文件上说,中文字符按UTF-8来识别,将中文转为UTF-8还是不起作用。

如: c:\\工

转为
c:\\工
c:\\工

都会识别不了,如果是英文路径,则是正常。

请高手帮忙。
...全文
175 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2011-09-30
  • 打赏
  • 举报
回复
\0 是字符串结束的标志。
Kaile 2011-09-30
  • 打赏
  • 举报
回复
上面一个小问题
应该
等于 c:\工
Kaile 2011-09-30
  • 打赏
  • 举报
回复
终于搞定了,就是用 const unsigned char test_dir[] = {0x63,0x3A,0x5C, 0xE5, 0xB7, 0xA5, 0x00 };

等于 c:/工

谢谢各位,尤其是英雄。

2天后结贴,来者都有分, 请大家讨论下这个问题。
iihero_ 2011-09-30
  • 打赏
  • 举报
回复
使用:const unsigned char test_dir[] = {0x63,0x3A,0x5C, 0xE5, 0xB7, 0xA5 };
试试,不行的在,后边再追加一个0字节
iihero_ 2011-09-30
  • 打赏
  • 举报
回复
这样,把你的源码帖出来,俺帮你重现一下子。俺搭个环境先。
iihero_ 2011-09-30
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 kaile 的回复:]

贡献下 如何GBK转换为UTF-8的代码:

string sOut ;

// 调用iconv库 核心是iconv函数
CLibConv::Convert("GBK", "UTF-8", "c:/工", sOut);

用法请见:
libiconv字符集转换库使用方法 http://www.usidcbbs.com/read-htm-tid-15……
[/Quote]
不错的库。
如果是windows,有几个专用的API实现两个指定字符集之间的转换。
Kaile 2011-09-30
  • 打赏
  • 举报
回复
Kaile 2011-09-30
  • 打赏
  • 举报
回复
贡献下 如何GBK转换为UTF-8的代码:

string sOut ;

// 调用iconv库 核心是iconv函数
CLibConv::Convert("GBK", "UTF-8", "c:/工", sOut);

用法请见:
libiconv字符集转换库使用方法 http://www.usidcbbs.com/read-htm-tid-1504.html

Kaile 2011-09-29
  • 打赏
  • 举报
回复
还是不行喔。


const unsigned char test_dir[] = {'c',':','/', 0xB9, 0xA4, 0x00 };

m_pEnv->set_data_dir((const char*) test_dir );

。。。

连接,创建数据库都没问题,但是在C盘根目录下,不是在“工”目录。
WWWWA 2011-09-28
  • 打赏
  • 举报
回复
SELECT HEX('c:\工')
633AE5B7A5
iihero_ 2011-09-27
  • 打赏
  • 举报
回复
C:\工对应的utf8值应该是:63 3a 5c 5c b9 a4
iihero_ 2011-09-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 kaile 的回复:]

帮助文件中说路径按UTF-8来解析,就是不知道具体格式。
工 =》 工

这种转换方法应该不正确,不知道如何转
[/Quote]
如果是按照utf8编码来指定文件路径,肯定不是你说的这个值。utf8字符串,全是byte数组。你的转换有问题。
Kaile 2011-09-27
  • 打赏
  • 举报
回复
帮助文件中说路径按UTF-8来解析,就是不知道具体格式。
工 =》 工

这种转换方法应该不正确,不知道如何转
WWWWA 2011-09-27
  • 打赏
  • 举报
回复
估计不支持,帮助上说的估计是储存在数据库中的汉字
iihero_ 2011-09-27
  • 打赏
  • 举报
回复
看看BDB的文档,看它是否支持其它字符集字符作为文件路径。也许压根就不支持。
rucypli 2011-09-26
  • 打赏
  • 举报
回复
看来只能英文路径了

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧