1、逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。
2、CSV文件文件是普通文本文件,直接使用文本文件控制参数“r”通过fopen函数即可打开。例如:
int a[1000],b[1000],i;
char s[1000][100];
FILE *fp; /*定义一个文件指针*/
fp=fopen("分数表.csv", "r"); /*打开文件csv文件*/
while(fscanf(fp,"%d,%d,%s",a+i,b+i,s[i])!=EOF){ /*利用逗号间隔,读取文本数据到一个数组里*/
/*处理读取的文本信息*/
}
fclose(fp); /*关闭打开的文件*/
你用记事本打开csv文件,如果数之间是用逗号隔开的,用程序一。
如果数之间是用空格隔开的,用程序二。
程序一。
#include
#define hang 1000
#define lie 9
main()
{
int i,j;
FILE *fid;
int a[hang][lie];
char str[256],str2,str3;
fid=fopen("A.csv","r");
for(i=0; i
for(j=0; j
printf("%d\n",a[i][j]);}}
for(i=0; i
printf("\n");}
}
程序2:
#include
#define hang 1000
#define lie 9
main()
{
int i,j;
FILE *fid;
int a[hang][lie];
char str[256],str2,str3;
fid=fopen("A.csv","r");
for(i=0; i
for(j=0; j
printf("%d\n",a[i][j]);}}
for(i=0; i
printf("\n");}
}
// vc 6.0可能需要使用的头文件
// #include "stdafx.h"
#include
#include
#include
// csv需要读取数据的文件名,可自行更改
#define FILENAME "csv"
using namespace std;
void main()
{
int a[1000][9];
int i, j;
string str = "junk";
ifstream in(FILENAME);
if (!in)
{
cerr << "Can not open the file." << endl;
return;
}
for (i = 0; i < 1000; ++i)
{
in >> str;
for (j = 0; j < 9; ++j)
{
in >> a[i][j];
cout << a[i][j] << ' ';
}
cout << endl;
}
in.close();
}
#include
int main()
{
int line, a[1000][9];
for (line=0; line < 1000; ++line)
{
scanf("%*s %d %d %d %d %d %d %d %d %d", a[line], a[line]+1, a[line]+2, a[line]+3, a[line]+4, a[line]+5, a[line]+6, a[line]+7, a[line]+8, a[line]+9);
}
}
来搞笑呢?