C 文件的读取和写入
更新时间:2023-05-27 08:13:01 阅读量: 实用文档 文档下载
毕业论文心得日记—思想的火花
乱花渐欲迷人眼,浅草才能没马蹄。有志者,事竟成。出师未捷身先死,长使英雄泪沾襟。桐花万里丹山路,雏凤清于老凤声。凡事预则立,不预则废。2010-04-08 11:12笔记:C++文件的读取和写入
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;
int main(){
char buffer[256];
ifstream myfile ("c:\\a.txt");
ofstream outfile("c:\\b.txt");
if(!myfile){
cout << "Unable to open myfile";
exit(1); // terminate with error
}
if(!outfile){
cout << "Unable to open otfile";
exit(1); // terminate with error
}
int a,b;
int i=0,j=0;
int data[6][2];
while (! myfile.eof() )
{
myfile.getline (buffer,10);
sscanf(buffer,"%d %d",&a,&b);
cout<<a<<" "<<b<<endl;
data[i][0]=a;
data[i][1]=b;
i++;
}
myfile.close();
for(int k=0;k<i;k++){
outfile<<data[k][0] <<" "<<data[k][1]<<endl;
cout<<data[k][0] <<" "<<data[k][1]<<endl;
}
outfile.close();
return 0;
}
无论读写都要包含<fstream>头文件
读:从外部文件中将数据读到程序中来处理
对于程序来说,是从外部读入数据,因此定义输入流,即定义输入流对象:ifsteam infile,infile就是输入流对象。
这个对象当中存放即将从文件读入的数据流。假设有名字为myfile.txt的文件,存有两行数字数据,具体方法:
int a,b;
ifstream infile;
infile.open("myfile.txt"); //注意文件的路径
infile>>a>>b; //两行数据可以连续读出到变量里
infile.close()
如果是个很大的多行存储的文本型文件可以这么读:
char buf[1024]; //临时保存读取出来的文件内容
string message;
ifstream infile;
infile.open("myfile.js");
if(infile.is_open()) //文件打开成功,说明曾经写入过东西
{
while(infile.good() && !infile.eof())
{
memset(buf,0,1024);
infile.getline(buf,1204);
message = buf;
...... //这里可能对message做一些操作
cout<<message<<endl;
}
infile.close();
}
写:将程序中处理后的数据写到文件当中
对程序来说是将数据写出去,即数据离开程序,因此定义输出流对象ofstream outfile,outfile就是输出流对象,这个对象用来存放将要写到文件当中的数据。具体做法:
ofstream outfile;
outfile.open("myfile.bat"); //myfile.bat是存放数据的文件名
if(outfile.is_open())
{
outfile<<message<<endl; //message是程序中处理的数据
outfile.close();
}
else
{
cout<<"不能打开文件!"<<endl;
}
c++对文件的读写操作的例子
/*/从键盘读入一行字符,把其中
的字母依次放在磁盘文件fa2.dat中,再把它从磁盘文件读入程序,
将其中的小写字母改成大写字母,再存入磁盘fa3.dat中*/
#i nclude<fstream>
#i nclude<iostream>
#i nclude<cmath>
毕业论文心得日记—思想的火花
using namespace std;
//////////////从键盘上读取字符的函数
void read_save(){
char c[80];
ofstream outfile("f1.dat");//以输出方工打开文件
if(!outfile){
cerr<<"open error!"<<endl;//注意是用的是cerr
exit(1);
}
cin.getline(c,80);//从键盘读入一行字符
for(int i=0;c[i]!=0;i++) //对字符一个一个的处理,直到遇到'/0'为止
if(c[i]>=65&&c[i]<=90||c[i]>=97&&c[i]<=122){//保证输入的字符是字符
outfile.put(c[i]);//将字母字符存入磁盘文件
cout<<c[i]<<"";
}
cout<<endl;
outfile.close();
}
void creat_data(){
char ch;
ifstream infile("f1.dat",ios::in);//以输入的方式打开文件
if(!infile){
cerr<<"open error!"<<endl;
exit(1);
}
ofstream outfile("f3.dat");//定义输出流f3.dat文件
if(!outfile){
cerr<<"open error!"<<endl;
exit(1);
}
while(infile.get(ch)){//当读取字符成功时
if(ch<=122&&ch>=97)
ch=ch-32;
outfile.put(ch);
cout<<ch;
}
cout<<endl;
infile.close();
outfile.close();
}
int m
ain(){
read_save();
creat_data();
system("pause");
return 0;
}
高山仰止,景行行止。天连五岭银锄落,地动山河铁臂摇。一日不见,如三秋兮。知者不惑,仁者不忧,勇者不惧。春眠不觉晓,处处闻啼鸟。
正在阅读:
C 文件的读取和写入05-27
备考2013 - 江苏省教师资格证考点精编 - 南京师范大学教师资格证03-06
食用菌栽培学实验指导书10-02
法治力量:成就中国梦想“ - ”第三届中国百强大律师颁奖盛典暨03-09
“中国传统节日的民俗文化”研究性学习报告07-01
经济学所有习题04-17
谁掌控了中国经济的“顶层权力”?10-19
钣金设计中折弯半径的确定方法03-18
2019年小学生二年级开学第一天作文06-13
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 写入
- 读取
- 文件
- 语文S版一年级下册看拼音写汉字复习题
- 财务管理学第六版人大 课后答案 思考题
- 欠平衡钻井技术研究与应用
- 第5章汇编语言层习题参考解答
- 火灾报警器常用操作流程
- 自创双簧《购物》剧本
- 安全隐患排查与整改制度
- L 第九章 汽车维修企业现场管理
- 人教版高一上复习资料题型分类完美版
- 单词王活动策划
- 2017年上半年江西省造价工程师土建计量:平整场地模拟试题
- 癌症患者疼痛护理的研究进展
- B淋巴细胞介导的特异性免疫应答
- 城市“富贵病”知多少
- 七年级英语上册 月考试题正式篇1-3单元 人教新目标版
- 如何认识特色社会主义道路
- 人教初二下册地理《期中考试试题》含答案.百度文库
- Autodesk开Alias新“纪元”
- 挂职锻炼是高校青年教师快速成长的有效途径
- 课题2 化学元素与人体健康 教案设计