用c++语言读取txt文件的列数据

wince编程中,一行有两个数据,有很多行,中间用空格隔开的,要求用c++分别读取两列数据存于两个数组中,数据比如10.001520.001630.105040.1049... wince编程中,一行有两个数据,有很多行,中间用空格隔开的,要求用c++分别读取两列数据存于两个数组中,数据比如
1 0.0015
2 0.0016
3 0.1050
4 0.1049
展开
 我来答
cjj796
推荐于2017-12-16 · TA获得超过8703个赞
知道大有可为答主
回答量:1.3万
采纳率:68%
帮助的人:3384万
展开全部

#include<iostream>
#include<fstream>
#include<string>
#include<iomanip>

using namespace std;

int main()

float n1[100];
float n2[100];
ifstream inFile;
int count; 

inFile.open("1.txt");

for (count=0; count<4;count++)    //读数据 
{
inFile>>n1[count]>>n2[count];
}
    inFile.close();


for (int i=0;i<count;i++)         //显示数据
{
cout<<setw(3)<<n1[i]<<setw(9)<<n2[i]<<endl;
}

return 0;
}
更多追问追答
追问
不是这个意思啊,上面的数据是原始数据,分别读取后应该是[1,2,3,4]和[0.0015,0.0016, 0.1050,0.1049]和存入一个数组中,重点是第二列数组
追答

这个程序就是把读取到的数据,存到数组里面了,给你说明一下:

首先定义两个数组:

    float n1[100];
    float n2[100];

         [1,2,3,4] 是存在了数组 n1 里面

         [0.0015,0.0016, 0.1050,0.1049] 是存在了数组 n2 里面


这句是读取TXT到数组,count是从0到3读取四行:

    inFile>>n1[count]>>n2[count];

这句是显示数组内容到屏幕,i 是从0到3显示四行:

    cout<<setw(3)<<n1[i]<<setw(9)<<n2[i]<<endl;

明白了吗?

tattackor
推荐于2016-06-23 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:870万
展开全部

1.用fgets函数可以读取文件中某行的数据,某列数据就必须一个一个读入每行的第几个字符,再存入到一个字符串当中。

2.例程:

#include<stdio.h>
#include<string.h>
void main()
{
  char a[100],b[100],c[100];
  int i=3,j=4,k=0;    //第三行,第四列
  FILE *fp = fopen("data.txt","r");
  while(fgets(c,100,fp)){    //读入每行数据
    i--;
    if(i==0) strcpy(a,c);    //读到第三行数据
    b[k++]=c[j-1];        //把每行的那列字符拷到b中
  }
  b[k]=0;
  printf("第%d行数据:%s\n",i,a);
  printf("第%d列数据:%s\n",j,b);
  fclose(fp);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式