当前位置:  技术问答>linux和unix

UTF-8的问题(本周5,18:00前结账)。

    来源: 互联网  发布时间:2015-09-01

    本文导语:  本人刚接触linux不久,如果问题幼稚,请包涵。 问题如下: 目的:打开一个现有文件,文件名中有unicode字符(比如gb2312编码的)。可以获得文件名是UTF-8编码的字符串。 问:我该怎么做? 本人暂时的理解如下:我可...

本人刚接触linux不久,如果问题幼稚,请包涵。
问题如下:
目的:打开一个现有文件,文件名中有unicode字符(比如gb2312编码的)。可以获得文件名是UTF-8编码的字符串。
问:我该怎么做?
本人暂时的理解如下:我可以用iconv来转,但是这样有弊端,就是我必须知道我该转成什么编码。如果是windows下的话,我把UTF-8转成宽字节字符串后,用_wfopen就可以了。但是我没有找到在linux上对应的东西。不知道setlocale以及mbstowcs之类的一些东西能否解决问题。

多谢!

|
字符串之间的转换, 肯定是要知道,原来和目标编码的.
同一个字符0xXX , 在不同编码里面的意思,是不一样的.

|
glib的做法是
1。如果系统支持nl_langinfo则使用这个函数获取系统的locale
2。如果没有则使用setlocale获取本地的locale
3。如果还是不行则使用getenv获取LC_ALL/LC_CTYPE/LANG 获取locale
4。如果还是不行则尝试两个glib的两个内部环境变量

我想也许你可以使用方法2或者3进行一下操作看看

欢迎访问我的个人网站 www.linuxc.net

|
我也想了解相关的东西,帮楼主顶一下!

|
自己根据转换表转换吧

|
gz

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 如何在windows下的DOS窗口中显示utf-8字符(CMD命令提示符终端显示utf-8字符)
  • 跪求解决方法 iconv 不支持 utf-8 gb2312转换 iconv -l 显示没有utf-8 gb2312
  • PHP实现Unicode和Utf-8互相转换
  • 在java中,怎么将UTF-8码转换为GB码?
  • 传utf-8的网页到linux出现乱码
  • gdbtui 中文注释乱码?设置了charset为UTF-8还是乱码,怎么办?
  • 怎样将UTF-8码的String转换成unicode!!!!!
  • C++国际化 UTF-8 CPP
  • c里怎们把GB2312的字符转化成UTF-8的编码??
  • 有没有去掉utf-8乱码的办法?
  • linux上使用C++如何处理utf-8编码的字段
  • utf8与UTF-8有什么区别
  • Shell脚本把文件从GBK转为UTF-8编码
  • 怎么把ubuntu默认的汉字编码UTF-8 彻底改为 gb2312 呢?
  • 如何在Solaris下查看UTF-8编码得中文字体 (不想安UTF-8得汉字字库)
  • Linux下UTF-8编码的转换
  • php自动识别文件编码并转换为UTF-8的方法
  • UTF-8字符串生成工具 utfout
  • 什么是UTF-8编码
  • 难道WINDOW下的UTF-8编码不够纯?
  • php中文乱码怎么办如何让浏览器自动识别utf-8


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3