查看: 2773|回复: 5

请教:writenodefile函数是否支持中文文件名?

[复制链接]

该用户从未签到

发表于 2008-10-30 00:54:45 | 显示全部楼层 |阅读模式
保存用中文文件名,成乱码;我把应用程序编译成unicode也不行;

是否还需要把osgdb这些库都编译成unicode版?现在我编译的是多字节版的

请明白人指点一下,谢谢

该用户从未签到

发表于 2008-10-30 02:05:01 | 显示全部楼层
使用setLoacl(。。。)转换一下,,,你那样做没用的~~~~~~~~~

该用户从未签到

发表于 2008-10-30 08:22:21 | 显示全部楼层
是不是要把ascii的中文字符转换成unicode的字符,网上有这样的代码。搜索一下就好了。

该用户从未签到

 楼主| 发表于 2008-10-30 11:42:21 | 显示全部楼层

用setLocal是可以

用setLocal是可以,但也带来2个问题:

1)对osg库中的每个相关函数都要设置setLocal?还是可以有个全局的设置

2)每次osg升级,岂不是都要进行本地化支持的设置?有何办法简化这个工作?

该用户从未签到

发表于 2008-10-30 12:10:55 | 显示全部楼层
这个没有OSG什么事的~~只要设置本地编码使std::string支持中文字符就可以了。不用对OSG现有和以后的版本做任何多余设置

编程的时候只需要这样:
  1. setlocale( LC_ALL, ".936" );
  2. osg::Node* node = osgDB::readNodeFile("文件.osg");
复制代码

[ 本帖最后由 array 于 2008-10-30 12:19 编辑 ]

该用户从未签到

 楼主| 发表于 2008-10-30 12:57:58 | 显示全部楼层

谢谢array,解决了

谢谢array,解决了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表