LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1731|回复: 8

linux 下中文路径问题

[复制链接]
发表于 2004-2-8 16:14:12 | 显示全部楼层 |阅读模式
redhat中xterm里面可以用
gmplayer /home/媒体/速度.avi
命令播放文件

但是在c语言编写的程序里面用
system("gmplayer /home/媒体/速度.avi");
执行的结果mplayer弹出对话框
“failed to open /home/乱码”
汉字的目录都成了其他奇怪字符


各位大侠
这个问题如何解决
还有,如果url地址里面有中文地址
在c下如何把它变成
用system(“gmplayer ”)这种方式能访问的到的地址?
发表于 2004-2-8 17:30:13 | 显示全部楼层
你的系统使用的是不是GB2312?
文件保存是不是utf-8,注意,你的程序保存编码应该和系统使用的是一样的
发表于 2004-2-8 20:15:39 | 显示全部楼层
C语言可能把中文字符处理成文件系统不能认识的编码。
 楼主| 发表于 2004-2-8 20:21:15 | 显示全部楼层
楼上大侠,怎么看自己系统使用的是不是GB2321
怎么才能让程序保存编码应该系统使用的是一样的那?
给介绍一下方法可否?
谢谢
发表于 2004-2-8 22:51:15 | 显示全部楼层
我在写程序的时候也遇到了类似的问题,还没找到好的解决办法。
你的系统用什么编码,你的源程序就用什么编码保存,再编译试试,
看可不可以解决。
用locale命令察看
发表于 2004-2-9 01:42:46 | 显示全部楼层
我用mlterm+vim编辑的文件,编译、运行没问题
用gedit编辑,源代码保存的时候要选gb2312
 楼主| 发表于 2004-2-9 09:04:39 | 显示全部楼层
我安楼上大侠说的用vim编辑果然没有可以运行,谢谢大侠
另外再问一句用gedit保存时怎么选gb2321?

还有怎么把url里面的中文给转换成gb2321形式那?
发表于 2004-2-9 19:17:21 | 显示全部楼层
在gedit中选择编辑->首选项->保存,设置成你需要的就可以了。
转换中文到不同的字符集可以用iconv。
发表于 2004-2-10 19:41:52 | 显示全部楼层
gedit保存文件对话框的中间,文件名的上面,有“字符编码”,选一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表