编译环境 WIn10 21H1 VS2017 字符集随意切换  解决乱码问题!

切换字符集后必需删除之前的文本文件!

// CreateFile.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//#include <iostream>
#include <windows.h>
#include <tchar.h>//  ErrorMessage support function.
//  Retrieves the system error message for the GetLastError() code.
//  Note: caller must use LocalFree() on the returned LPCTSTR buffer.
LPCTSTR ErrorMessage(DWORD error)
{LPVOID lpMsgBuf;FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER| FORMAT_MESSAGE_FROM_SYSTEM| FORMAT_MESSAGE_IGNORE_INSERTS,NULL,error,MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),(LPTSTR)&lpMsgBuf,0,NULL);return((LPCTSTR)lpMsgBuf);
}//  PrintError support function.
//  Simple wrapper function for error output.
void PrintError(LPCTSTR errDesc)
{LPCTSTR errMsg = ErrorMessage(GetLastError());_tprintf(TEXT("\n** ERROR ** %s: %s\n"), errDesc, errMsg);LocalFree((LPVOID)errMsg);
}int Write(LPTSTR lpPath, LPTSTR lpText)
{//创建文件HANDLE hFile = CreateFile(lpPath,   // 文件路径GENERIC_WRITE | GENERIC_READ,    // 写和读文件0,                              // 不共享读写NULL,                           // 缺省安全属性OPEN_ALWAYS,                   // 打开文件,不存在则创建FILE_ATTRIBUTE_NORMAL,         // 一般的文件       NULL);                           // 模板文件为空if (hFile == INVALID_HANDLE_VALUE){PrintError(_T("CreateFile failed"));return -1;}// 文件指针移动到文件末尾,追加内容的关键操作SetFilePointer(hFile, NULL, NULL, FILE_END);// 将内容写入文件DWORD dwWriten = 0;if (!WriteFile(hFile, lpText, _tcslen(lpText) * sizeof(TCHAR), &dwWriten, NULL)){PrintError(_T("WriteFile failed"));CloseHandle(hFile);return -2;}// 刷新指定文件的缓冲区并将所有缓冲数据写入文件FlushFileBuffers(hFile);CloseHandle(hFile);return 1;
}int main()
{   LPTSTR lpPath = (LPTSTR)_T(".\\a.txt");LPTSTR lpText = (LPTSTR)_T("中文 Chinese 666\r\n");#ifdef UNICODEsetlocale(LC_ALL, "zh_CN.UTF-8");
#endifif (Write(lpPath, lpText)) _tprintf_s(_T("%s"), _T("操作成功"));return 0;
}

Windows API CreateFile WriteFile 操作文件追加写入 解决中文乱码相关推荐

  1. JAVA之NIO按行读写大文件,完美解决中文乱码问题

    JAVA之NIO按行读写大文件,完美解决中文乱码问题 参考文章: (1)JAVA之NIO按行读写大文件,完美解决中文乱码问题 (2)https://www.cnblogs.com/jpfss/p/89 ...

  2. JAVA:如何读写txt文件,并解决中文乱码问题

    读写文件的编码格式需要保持一致,否则可能会出现中文乱码问题.以下使用UTF-8编码方式写入和读取文件. 1.写入txt文件 //--------------写入文本-------------//Str ...

  3. java实现解压(zip和rar文件)实例-解决中文乱码问题

    1.实现说明: 在下面引入的包中可以看出: 1)压缩.解压zip是用到的apache 的zip包,需要在引入jar包(jar-ant.rar): 2)压缩.解压rar需要用到的是junrar,这里需要 ...

  4. java nio 按行读取_JAVA之NIO按行读写大文件,完美解决中文乱码问题

    packagecom.chillax.imp; importjava.io.File; importjava.io.IOException; importjava.io.RandomAccessFil ...

  5. java nio 从内存读信息_JAVA使用NIO技术按行读写大文件并且完美解决中文乱码问题...

    packagecom.chillax.imp;importjava.io.File;importjava.io.IOException;importjava.io.RandomAccessFile;i ...

  6. Java读写.properties文件实例,解决中文乱码问题

    一般使用到properties配置文件,一般都是在spring项目里面,直接由框架帮你读,当然,你也得考虑到编码的问题. 但是现在要是要求使用Java直接读写properties文件,就发现很多的问题 ...

  7. idea Java 读取rtf文件内容,解决中文乱码的问题。

    百度找了很多java读取rtf文件内容的案例,都不行,不是读不出来就是乱码,要么就是多了很多编码异常的字符. 最后成功解决,得益于大佬的源码贡献,如下链接: 转载于:http://blog.sina. ...

  8. excel附件下载 Response 参数设置 (自定义文件并并解决中文乱码)

    String oriFileName = "我是文件名";response.setContentType("application/vnd.ms-excel") ...

  9. 使用c++进行Windows编程中各种操作文件的方法 【转】

    https://www.zhaokeli.com/article/8232.html 使用c++进行Windows编程中各种操作文件的方法 [转] 来源:赵克立博客 分类: C/C++ 标签:--发布 ...

最新文章

  1. 为什么LINKBUTTON不能插在LTEMTEMPLATE里???
  2. LiveBos---扩展按钮调用方法
  3. boost::hana::detail::unpack_flatten用法的测试程序
  4. kafka入门之broker--日志存储设计
  5. 【ArcGIS微课1000例】0001:添加XY数据(Add XY data)生成shp
  6. warshall算法求传递闭包c++_【建模小课堂】图论算法
  7. 口令是计算机软件吗,计算机口令密码以对计算机软件编程进行算法加密为特点,是适用于计算机数据保护和网络通信等广泛用途的密码。下列选项中,不属于常见的弱口令密码的是()。...
  8. Flink部署、使用、原理简介
  9. Visual Studio 2005/2008的代码段编辑器
  10. SSH框架总结(框架分析+环境搭建+实例源码下载)
  11. (原)python爬虫入门(2)---排序爬取的辽宁科技大学热点新闻
  12. 微信小程序商城完整代码
  13. html斜杠单元格,用斜杠拆分左侧单元格的html表
  14. 全面解析 UI/UE/交互设计
  15. h5耳机线弯曲了怎么办_最烦人的耳机线,总是像麻花一样缠绕在一起,这是什么个道理...
  16. 基于SSH+MySQL+Bootstrap的高校实验室预约管理系统
  17. 研一下学期第七周周记
  18. 五个“时髦”技术被判死刑
  19. 第七课:每年白捡几百块,你要不要
  20. 编程5分钟,命名2小时:聊聊命名规范!

热门文章

  1. 字符串format拼接格式化
  2. python 如何把字符串转换成浮点数
  3. log4net进阶手札(二):基本用法
  4. html+css语法基础
  5. 文献阅读 | Tracing the ancestry of modern bread wheats
  6. 求无向图的连通分量或有向图的强连通分量—tarjan()ccf高速公路
  7. Ubuntu安装deepin-wine-QQ
  8. bzoj3083 遥远的国度 bzoj3626 LCA (树链剖分)
  9. 【已解决】MySQL 服务正在启动 MySQL 服务无法启动
  10. HBuilderX 最新安装使用教程,附详细图解,持续更新