怎样用C++从txt文件中读取数据写入数组

2025-10-28 03:36:01

1、首先我们在电脑鉴侮改上新建一个文件夹,名称叫txt2array。

然后,打开我们的devc++,新建一个控攀耻制台c++项目,名称也叫txt2array。

怎样用C++从txt文件中读取数据写入数组

2、将项目文件及源代炼肤码文件以及我们演示用的数据文件都存放在txt2array文件夹中。

怎样用C++从txt文件中读取数据写入数组

3、向数据文件中写入一些演示用数据。

怎样用C++从txt文件中读取数据写入数组

1、在简介中已经说了,两个操作,一是读文件,二是类型转换。这两个操作,c++的标准库已经给我们准备好了,而且使用简单。

我们先来看看标准库的输入输出类的关系:

怎样用C++从txt文件中读取数据写入数组

2、上图的继承关系已经很清晰了。

这里多说一句,很多人以为iostream是一个单独的类,因为我们只要使用了cin和cout、cerr等就会#include <iostream>。实际上cin、cout都是iostream的父类istream以及ostream的类对象,iostream实际上只有几行,主要是extern了这几个类对象而已,有兴趣的可以去看看源代码。

好了,第一个操作读文件,我们可以使用ifstream或者fstream,前者提供了读取操作,后者可以同时进行读写。

我们主要看看ifstream类。看看它的构造函数:

怎样用C++从txt文件中读取数据写入数组

3、下面来看看字符串类型转整型的类,主要是istringstream类。

怎样用C++从txt文件中读取数据写入数组

4、istringstream的构造函数页面提供了一个字符串转数字的例子。

怎样用C++从txt文件中读取数据写入数组

1、我们知道了要使用的类库以及操作,下面我们来按步操作编写代码。

首先,包含相应的头文件。

这里我们包含的是fstream以及sstream类,具体可以看第一个图中的类关系。

怎样用C++从txt文件中读取数据写入数组

2、操作一:读取文件。

输入如下代码:

char line[256];

int intarr[5];

ifstream ifile("data.txt");

while(ifile.good())

{

ifile.getline(line,256);

puts(line);

}

运行下,看来我们读取成功了。ifile.good()会返回当前流的状态。

怎样用C++从txt文件中读取数据写入数组

3、操作二:将数据存入数组,并进行类型转换。

输入如下代码:

char line[256];

int intarr[5];

int linenum=1;

ifstream ifile("data.txt");

while(ifile.good())

{

int sum=0;

ifile.getline(line,256);

//puts(line);

istringstream iss(line);

   iss>>intarr[0]>>intarr[1]>>intarr[2]>>intarr[3]>>intarr[4];

   cout<<"第" <<linenum<<"行"<<endl;

   for(int i=0;i<5;++i)

   {

    sum+=intarr[i];

    cout<<intarr[i]<<endl;

   }

   cout<<"第" <<linenum<<"行和:"<<sum<<endl;

   linenum++;

}

怎样用C++从txt文件中读取数据写入数组

4、运行下程序看看。

可以看到,我们完成了读取文件数据,并将其转为数字保存到数组中,可以求和证明了我们的转换是没问题的。

怎样用C++从txt文件中读取数据写入数组

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢