如何把一个.csv的文件导入到C++的一个实型数组中?

.csv中的数据是用逗号隔开的实数,如何导入C++的一个数组中,保证可以作为float的数组引用... .csv中的数据是用逗号隔开的实数,如何导入C++的一个数组中,保证可以作为float的数组引用 展开
 我来答
dadi_汏哋
2015-09-26 · TA获得超过450个赞
知道小有建树答主
回答量:189
采纳率:0%
帮助的人:121万
展开全部
#include<cstdio>
#include<cstdlib>
using namespace std;

const int MAX = 100;

int num[MAX];//数组类型自定
int main(){
FILE *file = fopen("" , "r");//第一个参数传入你的路径,也即"路径/*.csv"
int i = 0;
while(fscanf(file , "%d" , num[i]) != EOF){
i++;
}
}

C++语法,但是基本用C来写的,可自行改成C

kaixingui2012
2014-05-31 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6268万
展开全部
#include <iostream>
#include <fstream>
using namespace std ;

void out( float *a, int n )
{
     int i;
     for( i=0;i<n;i++ )
          cout << a[i] << " " ;
     cout << endl ;
}

int main()
{
    float array[1024]; //不够,可以自己增加
    int i;
    char ch;
    ifstream infile ;
    infile.open( "text.txt" ); //当前目录下
    if ( !infile.good() )
    {
        cout << "open file error" <<endl;
        system("pause");
        return -1;        
    } 
    i=0;
    while( !infile.eof() )
    {
        infile >> array[i++];

        if ( infile.fail() )
        {
            i--;
            break;
        }
        infile >> ch ;
        if ( infile.fail() )
        {
            break;
        }
    }
    infile.close();
    out( array, i ); //显示数组内容
    system("pause");
    return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-05-31
展开全部
#include <stdio.h>

float data[10][3];  //10行数据,每行3列

int main()
{
    int line=0;
    FILE file=fopen("file.dat","r");
    while(!feof(file))
    {
        fscanf("%f,%f,%f", &data[line][0], &data[line][1], &data[line][2]);
        line++;
    }
    fclose(file);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式