c语言写入csv
① c语言中,把数据存储成txt或csv格式怎么才能正常显示
1,
不知道你的代码错在哪,下面是我写的运行正确的,自己对照看看
2,
保存到csv格式,他不认制表符\t,
3,
保存到xls格式就比较好
4,
运行后到D盘根目录下去找氏简文件睁滑tmp.txt和你好.xls
#include<stdlib.h>
#include<stdio.h>
void main()
{
int i;
char Name[5][8] = {"AAA","BBB","CCC","DDD","EEE"};
char Sex[5][8] = {"男","女","女","男","女"};
char Age[5][8] = {"27","23","28","27","26"};
FILE *fp;
fp=fopen("d:\\你好.xls","w");
fprintf(fp,"\n\t姓名\t性别\t年龄\n");
for(i=0;i<5;i++)
fprintf(fp,"\t%s\t%s\t%s\n",Name[i],Sex[i],Age[i]);
fclose(fp);
if((fp=fopen("d:\\tmp.txt","wt+"))==NULL)
{
printf("cannot open the file\n");
exit(0);
}
for (i=0;i<1000;i++)
{
fprintf(fp,"hello");
putc('\n',fp);
fprintf(fp,"歼早裤周一 周二 周三 周六\n");
}
fclose(fp);
}
② c语言 如何将csv导入数据库
csv数据要导入数据库,需要用到数据库的一些导入命令,比如或者其他,c语言程序里面调用这个命令就可以了;
③ 如何用c语言读取cvs文件到二维数组里
1、使用双层循环语句,就可以依次把数据顺序读入到一个二维数组当中了。
2、例程:
代码如下:
#include <stdio.h>
#include <string.h>册轿
char *trim(char *str)
{
char *p = str;
while (*p == ' ' || *p == '\t' || *p == '\r' || *p == '\n')
p ++;
str = p;
p = str + strlen(str) - 1;
while (*p == ' ' || *p == '\t' || *p == '\李姿液r' || *p == '\n')
-- p;
*(p + 1) = '\0';
return str;
}
int main()
{
FILE *fp = fopen("test.csv", "哪物r");
if(fp == NULL) {
return -1;
}
char line[1024];
while(fgets(line, sizeof(line), fp)) {
//printf("%s", line);
char *save_ptr;
char *name = strtok_r(line, ",", &save_ptr);
if (name == NULL) {
return -1;
}
char *age = strtok_r(NULL, ",", &save_ptr);
char *birthday = strtok_r(NULL, ",", &save_ptr);
printf("%s\t%s\t%s\n", trim(name), trim(age), trim(birthday));
}
return 0;
}
④ 用C写.CSV文件怎么写,急。。
#include"stdio.h"
#include"string.h"
#include<stdlib.h>
#include<conio.h>
struct Data{
char name[3];
char place[7];
char degree[7];
};
void main()
{
FILE *fr;
int i;
struct Data m;
int count = 0;
struct Data man[3] = { {"01","200801","改行2323.5"举改},{"02","200802","2656.9"},{"03","200803","5652.4"}
};
if((fr = fopen("test.csv","wt+")) == NULL)
{
printf("wrong");
exit(0);
}
for (i = 0; i < 3; ++i)
{
fprintf(fr,"%s,%s,%s\n",man[i].name,man[i].place,man[i].degree);////这样输出,用逗号核答哗隔开的
}
rewind(fr);
do
{
++count;
fgets(m.name,3,fr);
fseek(fr,1L,1);
fgets(m.place,7,fr);
fseek(fr,1L,1);
fgets(m.degree,7,fr);
printf("%s\t%s\t%s\n",m.name,m.place,m.degree);
fseek(fr,2L,1);
}while(count < 3);
fclose(fr);
getch();
}
⑤ 用C语言写CSV文件,如何写出多个工作表
1、CSV 文件 不支持 EXCEL中 的多个工作表的模式。 一个 CVS 文件只能转换成 EXCEL 一个工作表。山行
2、逗号分隔值逗早哗(Comma-Separated Values,CSV,有时也称睁羡为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。
⑥ C语言 链表问题 为什么读取csv之后 写不到链表里面, 只能把最后一个数据写进去。
creat函数敏肢的第二个参数有问题,因为函数参数是传值的,每次调用对last的改变并不能改变实参tail的值。
因为tail为全局变量,可以不要第二个参数,改为(老携当然,原型和调用语句都要改一侍拿伏下):
int creat(struct data * datain) //, struct data *last
{
if (datain == NULL)
{
return 2;
}
tail->next = datain;
tail = datain;
tail->next = NULL;
return 0;
}
⑦ C语言如何操作excel文件
如果数据简单的话,可以使用CSV(逗号分隔值)格式的文件。CSV格式的文件可以用Office Excel 打开。比如有要保存的一张表格是这样的:
----------------表格开始-------------------
编号 姓名 性别
1 A 男
2 B 女
3 C 男
---------------表格结束--------------------
那么在保存CSV文件里面数据格式是这样的:
----------------内容开始----------------
编号拆升,姓名,性别
1, A, 男
2, B, 女
3, C, 男
----------------内容结束----------------
用Excel打开是这样的:
下面是示旅慧老例程序:
#include <stdio.h>
struct Student
{
int id;
char name[10];
char gender[3];
};
int main(int argc, char *argv[])
{
// 在程序所在目录下面,可以看见一个名为 student.csv 的文件
FILE * file=fopen("student.csv","w");
struct Student studens[]=
{
{1,"A","男"},
{2,"B","女"},
{3,"C","男"},
};
int studensAmount=sizeof(studens)/sizeof(struct Student);
int i;
if(file)
{
fprintf(file,"%s%,%s,%s\n",碧如"编号","姓名","性别");
for(i=0;i<studensAmount;i++)
{
fprintf(file,"%d%,%s,%s\n",studens[i].id,studens[i].name,studens[i].gender);
}
}
fclose(file);
return 0;}
⑧ C语言读入.csv文件后,屏幕输出是乱码,写入本地文件不全,且错行,请问C语言高手怎么回事
csv文件中数据是用逗号分隔的,你读出后没有正确处理这些逗号。
⑨ C++怎样用CFile实现往csv文件中按一定格式写入数据
CSV文件很难写,都是纯文本的,关键是位置不好查找与处理。实在要这样就用CFile将整个文件按字符串行租读出来,再查找到位置,插入需要填写的数据及格式。在将更新后的字符串使用CFile的写入,写入到文件中。
如果是C++,可以变化一下,操档圆兆作EXCEL,对EXCEL操作VC++就有很多方腔漏式了,可以直接指定某个单元格填写数据及各式。最后将EXCEL文件另存为CSV格式就可以了。一样可以打开的。对编程来说简单多了。
⑩ C++中怎么操作mysql写入csv
导入操作
存在特殊字符情况的处理
Book1.csv
编号,名称,说明1,测试数据1,"测试CSV文件中,有逗号"2,测试数据2,"测试棚旦CSV文件中有""双引号"""3,测试数据3,"测试CSV文件中,有逗号和""双引号"""4,测试数据4,普通数据
mysql> CREATE TABLE Test_Book1 (
-> id int,
-> name VARCHAR(10),
-> data VARCHAR(100)
-> );
Query OK, 0 rows affected (0.05 sec)
下面的 lines terminated by '\r\n'物和型 是 要求换行符号,为 windows的换行
下面的 ignore 1 lines是 忽略第一行的标题行。
mysql> LOAD DATA INFILE 'f:/Book1.csv'
-> INTO TABLE Test_Book1
-> FIELDS TERMINATED BY ','
-> OPTIONALLY ENCLOSED BY '"'
-> lines terminated by '\r\n'罩猜
-> ignore 1 lines
-> (id, name, data);
Query OK, 4 rows affected (0.00 sec)
Records: 4 Deleted: 0 Skipped: 0 Warnings: 0
mysql> select * from test_book1;
+------+-----------+--------------------------------+
| id | name | data |
+------+-----------+--------------------------------+
| 1 | 测试数据1 | 测试CSV文件中,有逗号 |
| 2 | 测试数据2 | 测试CSV文件中有"双引号" |
| 3 | 测试数据3 | 测试CSV文件中,有逗号和"双引号" |
| 4 | 测试数据4 | 普通数据 |
+------+-----------+--------------------------------+
4 rows in set (0.00 sec)