C++实现逐行读取txt文件中的字符串以及文件文本的复制
本篇文章主要讲述了用C++实现逐行读取txt文件中的字符串以及文件文本的复制,具有一定参考价值,感兴趣的朋友可以了解一下,希望对你的学习有所帮助。
逐行读取txt文件中的字符串,代码如下
#include <fstream> #include <string> #include <iostream> using namespace std; int main() { ifstream in("1.txt"); string filename; string line; if(in) // 有该文件 { while (getline (in, line)) // line中不包括每行的换行符 { cout << line << endl; } } else // 没有该文件 { cout <<"no such file" << endl;//温馨小提示,木有此文件 } return 0; }
文件文本的复制,将1.TXT中的内容复制到2.TXT,代码如下:
#include <fstream> #include <string> #include <iostream> using namespace std; void fileCopy(char *file1, char *file2) { // 最好对file1和file2进行判断 ifstream in(file1); ofstream out(file2); string filename; string line; while (getline (in, line)) { out << line << endl; } } int main() { fileCopy("1.txt", "2.txt"); return 0; }
上述程序只能针对文本文件(不仅仅是.txt),对其它类型的文件不适合。
本文代码都在Windows/VC++6.0下测试过, 在linux/g++下也没有问题。
但是请一定注意linux和Windows文件格式的区别:
1. 当linux上的代码读取Windows文件格式时, 读取结果的每行都会多一个\r。
2. 当Windows上的代码读取linux格式文件时, 读取的结果会显示只有一行。
相关教程:C++视频教程
以上就是C++实现逐行读取txt文件中的字符串以及文件文本的复制的详细内容,更多请关注其它相关文章!