中文string字符串写入文件C++实现

更新时间:2023-07-25 10:14:14 阅读: 评论:0

中⽂string字符串写⼊⽂件C++实现
墨子简介由于中⽂在计算机中的存储是由两位字节, unicode编码中的utf-16实现,所以⽆法使⽤常规的字符⽅式写⼊⽂件。
可以采⽤将string转换为wstring,这样每个汉字存储时使⽤的是⼀个字节,就可以循环遍历每个字节写⼊⽂件,但在笔者的⼏次尝试下,这种⽅式输出暂未找到解决⽂件乱码的⽅法。
这⾥采⽤的是当某个字节检测到为汉字时,将其紧随的字节和⼀个 ‘\0’ 标志,⼀并存到char型数组后输出到⽂件,从⽽实现中⽂写⼊⽂件的C++⽅式的实现。为了你泰剧
ps:java有处理中⽂的包
叹离别void write()
{
//string str2 = wstringtoString(str);
//str2 = "chinaisagreatcountry";
str2 ="⼤数据平台";
FILE *fp1;
if((fp1 =fopen("","a"))==NULL)
cout <<"open error"<< endl;
el
{
for(int i =0; i < str2.size(); i++)
{
char s[3];
if(str2[i]&0x80)//如果当前节点是汉字
{
/
/⼀个汉字就是⼀个字符串,占两个字节,每个字结尾有'\0'标志,占⼀个字节
s[0]= str2[i]; s[1]= str2[++i]; s[2]='\0';
printf("%s", s);
fprintf(fp1,"%s", s);//写⼊⽂件
}
el世纪之约
蓝天杯
{
fprintf(fp1,"%c", str2[i]);
}
经济的重要性}月光女孩
fclo(fp1);
强迫症治疗方法}
}

本文发布于:2023-07-25 10:14:14,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1095926.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字节   循环   解决   并存   输出   数组   治疗   简介
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图