C++ 中一维数组从.txt文件赋值,文件第一行数组大小,第二行为数组赋值 how to do it?

如题所述

昨天刚好写过一个类似的程序
注意我说的路径那,.txt文件不在工程目录下,要用绝对路径,在工程目录下可以只写文件名
#include<fstream>
#include<iostream>
using namespace std;

int main()
{
int N; //保存a.txt中的数字个数
int *pa=NULL; //如果存放的不是整形,可在这换成你想要的数据类型
fstream file_in("c:\\a.txt"); //如果不在工程目录下,要用绝对路径
if(!file_in)
{
cerr<<"cannot open the a.txt file";
return -1;
}
file_in>>N;
pa=new int[N]; //申请动态数组用来存放读来的数据
for(int i=0;i<N;i++)
file_in>>pa[i];
for(int j=0;j<N;j++) //输出读来的数据
cout<<pa[j]<<endl;
delete []pa;
file_in.close(); //关闭文件流
file_in.clear(); //清空文件流状态
return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

...文件第一行数组大小,第二行为数组赋值 how to do it?
int N;\/\/保存a.txt中的数字个数 int *pa=NULL;\/\/如果存放的不是整形,可在这换成你想要的数据类型 fstream file_in("c:\\\\a.txt");\/\/如果不在工程目录下,要用绝对路径 if(!file_in){ cerr<<"cannot open the a.txt file";return -1;} file_in>>N;pa=new int[N];\/\/申请动态...

C++关于用ifstream来读取txt数据赋值给一个结构体对象和数组的问题
其一,先预读一行(按字符读入一个够大的数组),统计其中的空格数,空格数减1就是每行需要读取的数据个数。(大概可以用getline来处理)其二,预先获取整个文件的总行数(=城市个数)。代码是网上Ctrl+V来的 int CountLines(char *filename){ ifstream ReadFile;int n=0;char line[512];ReadFile....

C++,读取文件,第一行是文件行数,第二行开始是字符后跟着数字。
include<iostream>#include<string>#include<fstream>using namespace std;class student{public:void file();};void student::file(){ifstream read;read.open("t.txt");int num;read >> num;read.seekg(2, ios::cur);cout << "文件行数为:" << num << endl;char *ch = new char[50...

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

C++中怎样在一个程序里读取两个txt文件,并分别赋给两个数组,希望能详细...
puts("文件读取成功");puts("开始计算");printf("\\n");} \/\/循环读取文件1的每一行数据储存到a数组中 while( fgets(a, N, fl) != NULL ){ \/*___*\/ printf("以下是文件1的内容:\\n");printf("%s\\n\\n",a);\/*___*\/ } \/\/循环读取文件2的每一行数据储存到b数组中 while( fgets...

c++中如何将一个未知大小的数组读入,并将其存在一个3列,行数不定的二 ...
n = i; \/\/获得该一维数组大小 \/ for(i = 0;i <n;i++){ cout<<p[i]<<" ";} \/ m = n%3 ? n\/3+1 : n\/3; \/\/决定二维数组长度 int (*array)[3] = new int[m][3]; \/\/定义一个数组指针 for(i = 0;i <n;i++){ array[i\/3][i%3] = p[i];} for...

C++中,往一个一维数组中连续输入数值,为什么在超过数组元素个数后还能...
=1000. a[5]已经超出了数组a所占的存储区域,从图上可以看出是变量x所占的单元。所以当将1000赋值给a[5]的时候实际上市将1000赋值给了变量x。 所以才会输出那样难以理解的结果 要是没定义变量x和y的情况下就应该不会输出a[5]=1000的 你可以试一下看(我没试过)希望对你有所帮助 ...

VC++,读取txt文件数据,并存入数组中。
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],numberbuf[10];char * cur,* p;int index,index1;int temp[...

c++中怎么从一个文本文件中取出两列存入到另一文本文件中?
思路:用数组读取txt内容,对数组进行操作。我把三个文件内容都输出到屏幕了。include "stdafx.h"include <fstream> include <iostream> include <string> const int N = 5;\/\/a.txt行数 const int M = 5;\/\/c.txt行数 using namespace std;int main(){ ifstream fin("a.txt");ofstream fo...

C++二维数组给一维数组赋值
int a[100][100], b[100];int i;\/\/二维数组赋值操作可以写在这里,与主题无关,代码从略。for(i = 0; i < 100; i ++) b[i] = a[i][0];\/\/第一列即0列,C语言下标从0开始。2 整体复制。二维数组中的元素本身是连续存储的,如果要将二维数组连续的一组数据赋值给一维数组,可...

相似回答