1.unicode文件的打开必须用rb模式。

3.wchar_t str[100] = { 0 }; 这个占200个字节。

2.宽字符对应的处理

  • fgetc fgetwc
  • fputc fputwc
  • fgets fgetws
  • fputs fputws
  • fprintf fwprintf
  • fscanf fwscanf
  • fread ,fwrite

3.操作:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include <stdlib.h>
#include<locale.h> void main1()
{ FILE *pf = fopen("C:\\Users\\yincheng01\\Desktop\\QQ-腾讯通讯录.txt", "rb");
while (!feof(pf))
{
char ch = fgetc(pf);
putchar(ch); }
fclose(pf); system("pause");
} void main2()
{
setlocale(LC_ALL, "zh-CN");  //设置本地化,也就是怎样编码解码
FILE *pfr = _wfopen(L"C:\\Users\\yincheng01\\Desktop\\QQ-腾讯通讯录.txt", L"rb");
FILE *pfw = _wfopen(L"C:\\Users\\yincheng01\\Desktop\\QQc.txt", L"wb");
  //unicode文本文件得用rb打开。
while (!feof(pfr))
{
wchar_t ch = fgetwc(pfr);//获取宽字符
fputwc(ch, pfw);
putwchar(ch);//显示宽字符 }
fclose(pfr);
fclose(pfw);
system("C:\\Users\\yincheng01\\Desktop\\QQc.txt"); system("pause");
} void main3()
{
setlocale(LC_ALL, "zh-CN");
FILE *pfr = _wfopen(L"C:\\Users\\yincheng01\\Desktop\\QQ-腾讯通讯录.txt", L"rb");
FILE *pfw = _wfopen(L"C:\\Users\\yincheng01\\Desktop\\QQ.txt", L"wb");
while (!feof(pfr))
{
wchar_t wstr[] = { };
fgetws(wstr, , pfr);
wprintf(L"%ls",wstr);
fputws(wstr, pfw);//宽字符写入 }
fclose(pfr);
fclose(pfw);
system("C:\\Users\\yincheng01\\Desktop\\QQ.txt");
system("pause");
} void main()
{
setlocale(LC_ALL, "zh-CN");
//wprintf(L"%s", L"hello天朝");
wchar_t wstr[] = { };
fwscanf(stdin, L"%s", wstr);
fwprintf(stdout, L"%s%d%s", L"海华", ,wstr); system("pause");
}

unicode文件处理(如果是ANSI编码就不需要了)的更多相关文章

  1. 从Java String实例来理解ANSI、Unicode、BMP、UTF等编码概念

    转(http://www.codeceo.com/article/java-string-ansi-unicode-bmp-utf.html#0-tsina-1-10971-397232819ff9a ...

  2. VC 编程ANSI环境下读写Unicode文件

    没有注意到文件编码的不同会产生这么多的问题,在动手以前查询了很多资料,在本博客中收藏了不少先辈的成果,在这里一并表示致敬!       关于ANSI和Unicode编码的原理在这里也不说了,主要讲下如 ...

  3. Windows 记事本的 ANSI、Unicode、UTF-8 这三种编码模式有什么区别?

    [梁海的回答(99票)]: 简答.一些细节暂无精力查证,如果说错了还请指出. 一句话建议:涉及兼容性考量时,不要用记事本,用专业的文本编辑器保存为不带 BOM 的UTF-8. * * * 如果是为了跨 ...

  4. 原来windows里记事本的ansi编码就是GB2312啊,跟utf-8,unicode是不一样的。

    原来windows里记事本的ansi编码就是GB2312啊,跟utf-8,unicode是不一样的. 程序里的比如java的,Qt的string都是unicode的字符串,因此如果是你从文件中读取文字 ...

  5. paip.utf-8,unicode编码的本质输出unicode文件原理 python

    paip.utf-8,unicode编码的本质输出unicode文件原理 python      #别的语言,java php都是unicode,走十python不一样.    #enddef  #t ...

  6. 如何将lrc歌词文件批量转换为ANSI编码?

    有些MP3.MP4或学习机只能播放ANSI编码的歌词文件,可是从网站上下载的歌词大多是UTF-8或者其它机器支持不了的编码,如何批量将这些lrc歌词文件转换成ANSI编码的文件呢? 工具/原料 萍客T ...

  7. ASCII,Unicode,GBK和UTF-8字符编码的区别和联系

    如果经常写python2,肯定会遇到各种“奇怪”的字符编码问题,每次都通过谷歌解决了,但是为什么会造成这种乱码.decode/encode失败等等,本文就字符和字符编码做一个总结,更加清晰区分诸多的编 ...

  8. 关于windows系统里locale、code page、ANSI编码的问题

    最近把公司代码库里的代码同步下来之后编译了下,竟然出问题.问下同事说代码库肯定没问题,而我啥也没改,那到底那里出问题了呢? VS2018报的错误是:error RC2001: newline in c ...

  9. ANSI编码

    ANSI编码 ANSI简介 不同的国家和地区制定了不同的标准,由此产生了 GB2312.GBK.Big5.Shift_JIS 等各自的编码标准.这些使用 1 至 4 个字节来代表一个字符的各种汉字延伸 ...

随机推荐

  1. JavaScript获取当前url路径

    1.假设当前页完整地址是:http://localhost:61768/Home/Index?id=2 //获取当前窗口的Url var url = window.location.href; //结 ...

  2. ORA-28002 -- oracle密码过期

    1.登录oracle 2.查看密码有效期时长 SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PAS ...

  3. 【一小时入门】webpack 入门指南

    什么是 webpack? webpack是近期最火的一款模块加载器兼打包工具,它能把各种资源,例如JS(含JSX).coffee.样式(含less/sass).图片等都作为模块来使用和处理. 我们可以 ...

  4. Cnm%(个人模版)

    Cnm%: #include<stdio.h> #include<string.h> #include<vector> using namespace std; # ...

  5. set使用实例1+lower_bound(val)(个人模版)

    set使用实例1+lower_bound(val): #include<stdio.h> #include<set> #include<iostream> #inc ...

  6. Codeforces 789A Anastasia and pebbles(数学,思维题)

    A. Anastasia and pebbles time limit per test:1 second memory limit per test:256 megabytes input:stan ...

  7. 在Sql Server Intergration Service中设置Catalog下所部署所有项目的参数值

    在Sql Server 2012开始,微软给SSIS添加了Project Model这种新的项目类型,与之对应的是在Sql Server数据库引擎中引入了Intergration Services C ...

  8. visual studio 打开微软MVC3示例MvcMusicStore的详细修改方法

    1.官方下载地址:http://mvcmusicstore.codeplex.com/ 2.直接打开项目后,引用中会有三个dll文件报错,分别是System.Web.MVC;System.Web.He ...

  9. 一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](六)

    前言 大家好,我是Rector 又是星期五,很兴奋,很高兴,很high...啦啦啦... Rector在图享网又和大家见面啦!!!上一篇<一步一步创建ASP.NET MVC5程序[Reposit ...

  10. 查看三种MySQL字符集的方法

    查看MySQL字符集的命令是我们经常会使用到的,下文就介绍了其中的三种查看MySQL字符集的命令,供您参考学习. 作者:佚名来源:互联网|2010-10-09 11:36 移动端 收藏 分享 CTO训 ...