问题及代码:
#include <iostream> //定义头文件 #include <fstream> #include<cstring> using namespace std; int main() { ifstream readFile; //定义文件流对象 ofstream writeFile; char ch[100]; readFile.open("a.txt", ios::in); //以输入方式打开a.txt writeFile.open("b.txt", ios::out); //以输出方式打开b.txt while (!readFile.eof()) //如果成功打开文件 { readFile.getline(ch,100,'\n'); //接受a.txt 一行的数据 writeFile.write(ch,strlen(ch)); //输出到b.txt 一行的数据 writeFile.write("\n",1); //写入一个换行符 } readFile.close(); //关闭文件 writeFile.close(); cout << "Finish!" << endl; return 0; }
运行结果:
这个也是文件的复制。
在getline 遇到换行符结束,所以在输出的时候,每行结尾应该加上换行符
write 函数的使用方式跟getlince使用方式类似 cout.write(字符数组(或者字符指针),字符个数)
有open 就有close
时间: 2024-11-10 10:28:11