写文件

#include <fstream>
#include <iostream>
using namespace std; int main()
{
ofstream outfile("1.txt",ios::ate); //打开文件,设置写入方式为覆盖写入 if(!outfile)
{
cout<<"txt文件打开失败!"<<endl;
exit(0);
} outfile<<"写入txt文件示例.\n";
outfile<<"成功写入.\n"; outfile.close();
}

  读文件并转码

 #include <fstream>
#include <iostream>
#include <Windows.h>
#include <string>
using namespace std; string UTF8ToGB(const char* str)
{
string result;
WCHAR *strSrc;
LPSTR szRes; //获得临时变量的大小
int i = MultiByteToWideChar(CP_UTF8, , str, -, NULL, );
strSrc = new WCHAR[i+];
MultiByteToWideChar(CP_UTF8, , str, -, strSrc, i); //获得临时变量的大小
i = WideCharToMultiByte(CP_ACP, , strSrc, -, NULL, , NULL, NULL);
szRes = new CHAR[i+];
WideCharToMultiByte(CP_ACP, , strSrc, -, szRes, i, NULL, NULL); result = szRes;
delete []strSrc;
delete []szRes; return result;
} int main()
{
char txt[];
string msg;
ifstream infile;
infile.open("1.txt"); if(!infile.is_open())
{
cout<<""<<endl;
exit();
} while(!infile.eof())
{
infile.getline(txt,);
msg=UTF8ToGB(txt);
cout<<msg<<endl; } infile.close();
getchar();
}

C++中文乱码解决

 #include<iostream>
#include <string>
#include <Windows.h>
using namespace std;
string UTF8ToGB(const char* str)
{
string result;
WCHAR *strSrc;
LPSTR szRes; //获得临时变量的大小
int i = MultiByteToWideChar(CP_UTF8, , str, -, NULL, );
strSrc = new WCHAR[i+];
MultiByteToWideChar(CP_UTF8, , str, -, strSrc, i); //获得临时变量的大小
i = WideCharToMultiByte(CP_ACP, , strSrc, -, NULL, , NULL, NULL);
szRes = new CHAR[i+];
WideCharToMultiByte(CP_ACP, , strSrc, -, szRes, i, NULL, NULL); result = szRes;
delete []strSrc;
delete []szRes; return result;
} string msg; int main ()
{
const char txt[] = "哈哈哈";
msg=UTF8ToGB(txt);
cout<<msg<<endl; return ;
}

c++编码及读写文件的更多相关文章

  1. 【CodeBase】PHP转换编码,读写文件/网页内容的防乱码方法

    核心代码: //检查字符串的编码 $charset=mb_detect_encoding($doc,['ASCII','GB2312','GBK','BIG5','UTF8'],TRUE); //字符 ...

  2. python3.x 读写文件要使用UTF8编码的话需要。。

    读写文件常遇到编码不正确的情况,都用UTF8读写文件就好了,在读写的时候加上编码格式:encoding='UTF-8'如下:with open(filename, 'r', encoding='UTF ...

  3. 字符编码codecs模块(读写文件)

    python对多国语言的处理是支持的很好的,它可以处理现在任意编码的字符,这里深入的研究一下python对多种不同语言的处理.有一点需要清楚的是,当python要做编码转换的时候,会借助于内部的编码, ...

  4. 计算机程序的思维逻辑 (60) - 随机读写文件及其应用 - 实现一个简单的KV数据库

    57节介绍了字节流, 58节介绍了字符流,它们都是以流的方式读写文件,流的方式有几个限制: 要么读,要么写,不能同时读和写 不能随机读写,只能从头读到尾,且不能重复读,虽然通过缓冲可以实现部分重读,但 ...

  5. Python读写文件

    Python读写文件1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('t ...

  6. java使用IO读写文件总结

    每次用到IO的读写文件都老忘记写法,都要翻过往笔记,今天总结下,省的以后老忘.java读写文件的IO流分两大类,字节流和字符流,基类分别是字符:Reader和Writer:字节:InputStream ...

  7. C#常用IO流与读写文件

    .文件系统 ()文件系统类的介绍 文件操作类大都在System.IO命名空间里.FileSystemInfo类是任何文件系统类的基类:FileInfo与File表示文件系统中的文件:Directory ...

  8. Java读写文件方法总结

    Java读写文件方法总结 Java的读写文件方法在工作中相信有很多的用处的,本人在之前包括现在都在使用Java的读写文件方法来处理数据方面的输入输出,确实很方便.奈何我的记性实在是叫人着急,很多时候既 ...

  9. Python读写文件乱码问题

    对开发者来说,最恼人的问题之一莫过于读写文件的时候,由于编码千差万别,出现乱码问题.好难快速解决啊... 最近我也遇到了这样的问题,经研究,把大致的解决思路拿出来共享. 1. python中习惯首先声 ...

随机推荐

  1. H3C无线路由器安装与设置

    一.电脑与路由器的连接利用一根cat5e网线一头连接到电脑上笔记本或台式机都可以,另一头连接到无线路由器的LAN口任意LAN口都可以二.设置无线路由器完成路由器安装与电脑连接后,接下首次使用就需要设置 ...

  2. redis内存数据库C客户端hiredis API 中文说明

    A)编译安装 make make install (/usr/local) make install PREFIX=$HOME/progs(可以自由指定安装路径) B)同步的API接口 redisCo ...

  3. alsa声卡分析alsa-utils调用过程

    如何分析tinyplay 播放音频和tinymix的过程?需要相应的工具来支持追查: 一.利用strace工具分析tinyplay和tinymix: strace -o tinyplay.log ti ...

  4. Maven就是这么简单

    什么是Maven Maven是一个采用纯Java编写的开源项目管理工具, Maven采用了一种被称之为Project Object Model (POM)概念来管理项目,所有的项目配置信息都被定义在一 ...

  5. ARM开发软件ADS教程

    ARM开发软件ADS教程 ADS(ARM Developer Suite)是ARM公司推出ARM集成开发环境,操作简单方便,获得广大开发人员的青睐.下面使用ADS v1.2做一个实例教程,帮助大家学会 ...

  6. 【mongodb系统学习之一】mongodb的简单安装

    linux中mongodb的安装(最简单的): 1.下载mongodb安装包,这里用mongodb-linux-x86_64-2.6.9.gz 提供一个下载地址:http://pan.baidu.co ...

  7. AM335x(TQ335x)学习笔记——Nand&&网卡驱动移植

    移植完成声卡驱动之后本想再接再励,移植网卡驱动,但没想到的是TI维护的内核太健壮,移植网卡驱动跟之前移植按键驱动一样简单,Nand驱动也是如此,于是,本人将Nand和网卡放在同一篇文章中介绍.介绍之前 ...

  8. windows驱动之WDF---CharSample

    驱动程序部分: NTSTATUS DriverEntry( IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath ) /*++ ...

  9. dpkg: error: -i (--install) 和 -i (--install) 两个操作之间有矛盾

    1 错误描述 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ sudo dpkg -i -i WineQQ2013-20131120-Longene.deb [ ...

  10. 【原】Java学习笔记031 - 常用类

    package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 类 Math: ...