实验9 C++ I/O流
一、实验目的和任务
1)掌握文件流的打开、关闭及使用的使用方法;
2)了解文本文件流与二进制文件流在操作上的区别。
二、实验原理介绍
验证性实验
具体原理(略)
三、实验设备介绍
软件需求: Visual C++ 6.0
四、实验内容和步骤
题目1:编一个程序用于复制文本文件
题目2: 编一个程序从一个文本文件source.txt中读入若干整数,用选择法将这些数据排成升序,将排序后的结果写入另一个文件文本文件target.txt中。注意两个文件均在d盘的data文件夹中。
在程序运行前,先准备好输入数据文件source.txt,放入d盘的data文件夹中,内容可以如下:
程序运行结束后,查看d盘的data文件夹中的结果文件target.txt内容是否正确。
五、注意事项和要求
要求学生要提前准备实验的内容
实验完成后要求写出实验报告
实验九
1.#include <fstream>
#include <iostream>
using namespace std;
void main()
{
char ch;
ifstream file("C:/test.txt");//读取c盘的文本文件
ofstream file1("C:/test1.txt");//创建文本文件
while(file.get(ch))//读取文本中的内容
{
cout << ch;//输出文本内容到控制台
file1<<ch;//写入内容到文件
}
file.close(); //关闭文件流
file1.close();
cout<<endl;
}
#include<iostream>
#include<fstream>
using namespace std;
int main()
{ int i,j,temp,r[18];
const int n=18;
ifstream file_in("D:\\source.txt",ios::in);
if(file_in.fail())
{ cerr<<"文件 source.txt 打开失败!"<<endl;
return 1;
}
for(i=0;i<n;i++)
{
file_in>>r[i];
}
file_in.close();
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
{
if(r[i]>r[j])
{
temp=r[j];
r[j]=r[i];
r[i]=temp;
}
}
ofstream file_out("D:\\target.txt",ios::out);
if(file_out.fail())
{ cerr<<"文件 target.txt 打开错误!"<<endl;
return 1;
}
for(i=0;i<n;i++)
{
file_out<<r[i]<<" ";
}
file_out.close();
return 0;
}
实验体会:
上机实验深刻的感受到了c++的厉害同时也感觉到学C++的困难,要在 C++ 中进行文件处理,必须在 C++ 源代码文件中包含头文件 <iostream> 和 <fstream>,在从文件读取信息或者向文件写入信息之前,必须先打开文件。ofstream 和 fstream 对象都可以用来打开文件进行写操作,如果只需要打开文件进行读操作,则使用 ifstream 对象。
指导教师评语:
成绩评定: