C++ 从TXT文件中读取数据存到数组中

比方说一个里面全是整数的TXT文件,整数之间用空格分开,谁能给我一个实现从文件中读取数据到一个自定义数组中的C++代码啊?越快越好

5年前的回答热度还挺高,现添加C++实现的代码:

#include <fstream>

#include <iostream>

#include <vector>

#include <algorithm>

using namespace std;


//static const string fileFullPath = "d:\\decimal.txt"; //windows格式输入文件

static const string fileFullPath = "/cy/decimal.txt"; //linux格式输入文件


template<typename T>

void printElement(T& val)

{

    cout << val << endl;

}


template<typename T>

void outputVec(vector<T>& vec)

{

    for_each(vec.begin(), vec.end(), printElement<T>);

}


int main()

{

    fstream fs;

    fs.open(fileFullPath.c_str(), ofstream::in);

    

    vector<int> arrInt;

    while (!fs.eof())

    {

        int a;

        fs >> a;

        arrInt.push_back(a);

    }

    outputVec(arrInt);

    exit(0);

}



===========以下为2016年的原始回答============

#include <stdio.h>

#include <stdlib.h>


#define MAXSIZE 100


main()

{

    FILE *fp;

    if ( (fp = fopen( "c:\\a.txt", "r" )) == NULL ) printf("ERROR!\n");

    int tmp[MAXSIZE];

    int i;

    for ( i=0; i<MAXSIZE; i++ )

    {

        tmp[i] = 0;

    }

    char chtmp[10000];

    i=0;

    while ( !feof(fp) && i!=MAXSIZE )

    {

        fscanf( fp, "%d ", &tmp[i] );

        //printf("tmp[%d]=%d",i,tmp[i]);

        i++;

    }

    for ( i=0; i<MAXSIZE; i++ )

    {

        printf( "tmp[%3d]=%d\n", i, tmp[i] );

    }

    fclose( fp );

    system("PAUSE");

}


TXT文件需要放在c盘根目录

[][][][][]TXT文件内容如下:

1234 5 6 6 6 7 8 8 8356 8 3568 35 8 136 1 8 07 86 89765 7895 765 786 4 654 654 8 790 870 987 0987 87 69 8756 765 87 65 8765 84 3 54 3 458 76 0987 -908 -908 -709 0986 98 76 06 985 7 4 423 6542 6543

温馨提示:内容为网友见解,仅供参考
无其他回答

C++ 从TXT文件中读取数据存到数组中??你是怎么解决的谢谢
文件中读取数据存到数组中的命令:include <fstream> void main()nclude <stdio.h> include <math.h> define MaxLength { int a[10];ifstream fin("D:\/我的输入文件.txt");for(int i=0;i<10;i++)fin>>a[i];for(int i=0;i<10;i++)cout<<a[i]<<endl;ofstream fout("D:\/我的...

请问C++ 如何从txt文件中读取数据,然后保存在类的数组中?
File_read>>data[i].num>>data[i].name>>data[i].score;i++;} 数组data是的类型是信息类。自己试试。

C\/C++如何读取TXT文件的行数和把TXT文件的内容存到数组中
C语言读取TXT文件的行数并把把TXT文件的内容存到数组中,需要根据每行的内容(字符,数字,字符串)选取fgets、fscanf或者fgets。这里假设每行是一个字符串,每行不超过127个字符(用数组存字符串,最后一位存'\\0'),选取fgets进行读取。示例代码如下:include <stdio.h>#include <stdlib.h>int main...

VC++,读取txt文件数据,并存入数组中。
include <iostream> using namespace std;define FRISTCLM 30000 define SECONDCLM 8 \/\/参数 Filename 为要读的文件名,如:readdd.txt 。int ReadFileToBUF(char * Filename,int bufdd[][SECONDCLM],int len){ FILE *fp=fopen(Filename,"r");if(fp == NULL)return 0;char buf[256],num...

C++如何逐行读取txt文件,并将读取出来的数据进行运算导入到另一个文件...
1、首先我们在电脑上新建一个文件夹,名称叫txt2array。然后,打开我们的devc++,新建一个控制台c++项目,名称也叫txt2array。2、将项目文件及源代码文件以及我们演示用的数据文件都存放在txt2array文件夹中。3、向数据文件中写入一些演示用数据。4、读取文件。输入如下代码:运行下,看来我们读取成功了...

C++如何一行一行读取txt文件中数据并存入相应数组?
循环读入。c 程序 可作为 c++程序。include<iostream> include<fstream> using namespace std;include <stdio.h> main(){ int x[5],y[5];int i;FILE *fp;fp=fopen("sk.txt","r");for (i=0;i<5;i++) fscanf(fp,"%d",&x[i]);for (i=0;i<5;i++) fscanf(fp,"%d",&y[i...

急!!!C++怎么从txt文档里面只读数字,不读文字,读到数组里面去...
大概如下:ifstream fin;fin.open("xxxx.txt",r);fin>>array[i];fin.close();

C++:读写数据(.text文件与数组)
读取文件数据到数组中,对于一维数组,直接使用read()函数读取文件数据即可。对于二维数组,先读取一维数据到数组中,然后根据数组大小进行二维数组填充。对于一维数组,可以这样读取:首先确定数组大小,然后使用read()函数读取相应数量的元素到数组中。读取二维数组时,同样需要先读取一维数据,然后根据数组维度...

用vc++逐行读取文本文件txt里面的数据,并且复制给数组
char *srcfile = "data.txt";\/\/文件名 int data[MAX][8];int main(){ FILE *src = fopen(src,"r");int i,j;for(i = 0;i < MAX;i++){ fscanf(srcfile,"%d,%d,%d,%d,%d,%d,%d,%d",&data[i][0],&data[i][1],&data[i][2],&data[i][3],&data[i][4],&data[...

C++如何在文件中读取数据,然后保存在一个数组中
{ int s[5][2];ifstream fin("a.txt");int x;fin>>x;for(int i=1;i<x;i++){ for(int j=1;j<2;j++){ fin>>s[i][j];} } ofstream fout("input.txt");fout<<x;for(int k=1;k<k;k++){ for(int t=1;t<2;t++){ fout<...

相似回答