在 C++ 中读取和写入文本文件

在本教程中,我们将学习如何在C++中读取和写入文本文件。在这两种情况下,请始终在声明读/写数据流后检查文件是否存在:

ifstream myFlux(C:/test.txt”);
if(myFlow){
  ...
}
else{
  指示文件不存在的消息
}

写入 C++

写入是通过创建流来完成的 ofstream将文件名作为参数。此流程将发挥作用。中介之间 编译器和文件。语句流名<< ”写点什么 <写了句子写点东西test.txt。endl 进行换行。

#include
#include
#include <字符串>
#include
使用命名空间 std;

void write(int T[])
{
    字符串 const filename(C:/test.txt”);
    ofstream myStream(nomFichier.c_str());
    if(myFlow)
    {
               字符串字符串;
               for(int i = 0 ; i < 10 ;i++)
          string += convertInt(T[i])+;
               myFeed <<链条<
    }
    else
       成本<<无法打开文件。 <
}

//将整数转换为 string
字符串 convertInt(int number)
{
  字符串流 ss;SS <<数;返回 ss.str();
}

//生成一个 aletory number
int rand(int nb)
{
   返回 rand()%nb;
}

int main()
{
   int T1[10]={12345,6,7,8,9,10};
   写作(T1);
   播放();
   srand(时间(NULL));
   for(int i=0; i<5;i++)
           printf(%d \n,rand(50));
   system(pause”);
}

读取 C++

在C++中,您可以通过三种方式阅读:
  1. 逐行:播放光标将读取整行,并使用 getline 方法( ifstream stream, string line).
  2. 逐字:使用 myFlow 语句>>词;字是丁字裤。单词之间用空格分隔.
  3. 逐个字符:使用 get(char c).
示例:
void reading()
{
    ifstream myFlux(C:/test.txt”);
     if(myFlow)
    {
               字符串;
               printf(逐行\n”);
                while(getline(myFlow,line))
                      成本<<行<
               printf(逐字\n”);
                myFlow.clear();
        初始化 zero
               myFlux.seekg(0, ios::beg);
                字符串词;
                while(myFlow >>word)
                      成本<<莫特<
               printf(逐个字符\n”);
                myFlow.clear();
               myFlux.seekg(0, ios::beg);
                坦克c;
                while(myFlux.get(c))
                {
                     成本<<三<
                     int position=myFlow.tellg();        
               }
    }
     else
        成本<<无法打开文件” <
}