社区
C++ 语言
帖子详情
有关纯 C/C++中 对 由 Unicode向ASCII 转换的问题
lazy2008
2004-01-15 02:15:23
先向各位道谢了。
我在调用 ifstream 类打开文件的时候,需要处理 文件名为中文的情况。
所以,我就调用了 函数 wcstombs(char *, const wchar_t *, size_t) 来对文件名进行转换。但却不能成功的执行。
不知道问题出在那里。
请诸位高手赐教!
...全文
294
9
打赏
收藏
有关纯 C/C++中 对 由 Unicode向ASCII 转换的问题
先向各位道谢了。 我在调用 ifstream 类打开文件的时候,需要处理 文件名为中文的情况。 所以,我就调用了 函数 wcstombs(char *, const wchar_t *, size_t) 来对文件名进行转换。但却不能成功的执行。 不知道问题出在那里。 请诸位高手赐教!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lazy2008
2004-01-16
打赏
举报
回复
哦,我刚才试验了一下的,正如 “gieroland(咏咏张咏咏(抵制日货))” 所说的,char * 可以被赋予中文字符的。
char* pFileName;
pFileName="F:\\Project\\简洁型\\1.3.46.670589.11.6.1.1.1.0.0.1";
ifstream _if( pFileName,ios_base::binary | ios_base::in );
感谢 “gieroland(咏咏张咏咏(抵制日货))”的 提示!
但是,我现在很想利用函数 wcstombs(char *, const wchar_t *, size_t) ,把 wchar_t 类型转换成 char类型,但该函数却不能正常执行。
非常头疼!
playmud
2004-01-16
打赏
举报
回复
和操作系统有关吗?
gieroland
2004-01-16
打赏
举报
回复
这个不应该是Unicode向ASCII 转换的问题
猜想你即使不转化应该也可以调用ifstream 类打开文件,一个中文两位,对于字符串比较来说它可以不管你这两位到底是合成一个中文字符还是分开的两个ASCII字符。
所以你只需要把带路径的文件名(char*)得到之后调用ifstream 类的方法就可打开文件。
lazy2008
2004-01-16
打赏
举报
回复
是函数 wcstombs(char *, const wchar_t *, size_t) 不能正常执行。
wchar_t 的实参是一个带路径的文件名,其中,路径是带中文的,当调用这个函数后, char*
的值却在中文那里被截断了。。。。
sandrowjw
2004-01-16
打赏
举报
回复
你确信是unicode吗?如果是gb_2312用wcstombs是没用的。还有你说的截断,看不见这些字符不一定是截断了,也请确认一下,最好把2进制值获得,否则很难确认问题的。
xilihuala
2004-01-16
打赏
举报
回复
关注ing...
Jinhao
2004-01-16
打赏
举报
回复
wchar_t *wch=L"F:\\Project\\简洁型\\1.3.46.670589.11.6.1.1.1.0.0.1";
char* ch=new char[256];
wcstombs(ch,wch,256);
cout<<ch<<endl;
这样行不??
lazy2008
2004-01-16
打赏
举报
回复
函数 wcstombs(char *, const wchar_t *, size_t) ,当参数“const wchar_t *”含有中文时,为什么输出参数只返回应返回值的一小部分(遇到中文后就被截断了。。。)
boxban
2004-01-15
打赏
举报
回复
那块不能成功的执行?
wcstombs(char *, const wchar_t *, size_t)
还是 用 ifstream 类打开文件的时候?
你是如何得到wchar_t型的文件名的?
C++
(19):字符转码UTF8/
Unicode
/
Ascii
本文详细介绍了
C++
中
字符编码的
转换
,包括UTF-8到
Unicode
,
Unicode
到
ASCII
,UTF-8到
ASCII
,
ASCII
到
Unicode
,
Unicode
到UTF-8以及
ASCII
到UTF-8的
转换
代码,旨在解决编程
中
遇到的字符乱码
问题
。
c语言
unicode
编码转
ascii
码,
Unicode
和
ASCII
的
转换
本文介绍了在C语言
中
如何将
Unicode
编码的文件
转换
为
ASCII
编码。通过Is
Unicode
File函数判断文件是否为
Unicode
格式,然后使用ConvertFile函数将
Unicode
文件
转换
成
ASCII
临时文件。这些方法适用于处理无法直接处理
Unicode
的
ASCII
应用程序。
C/
C++
对
Unicode
编码的处理
本文详细探讨了
C++
对
Unicode
编码处理的复杂性,并提供了将ANSI编码文件
转换
为
Unicode
文件的实操步骤,包括使用底层C语言文件读写函数以二进制方式操作文件,以及如何正确地将
中
文内码
转换
为
Unicode
编码。
c语言
unicode
编码转
ascii
码,编码
转换
(
ASCII
和
Unicode
、
Unicode
和
中
文相互
转换
)
本文展示了如何使用C#编写一个编码
转换
工具,能够进行
ASCII
到
Unicode
、
Unicode
到
ASCII
、
Unicode
到
中
文以及
中
文到
Unicode
的
转换
。通过检查输入内容,根据指定的
转换
类型进行
转换
操作,实现了字符串的编码互换功能。
C/
C++
实现十六进制面值转字符串、字符面值转十六进制、
UNICODE
与GBK互转,UTF-8与GBK互转
本文深入讲解
ASCII
、非
ASCII
、
Unicode
、UTF-8等编码概念,探讨GBK与UTF-8的互转原理,并提供C/
C++
代码实现。从字符集到编码方式,全面解析不同编码间的
转换
机制。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章