C语言中的CSV文件生成器
是否有任何C程序可以在Linux机器上运行,并将创建给定维度(行x列)的csv文件并将其存储在硬盘上?如果您正在寻找现有的实用程序,您可能位于错误的站点,但类似这样的程序会打印一个带有双引号单元格且没有标题行的空csv文件:C语言中的CSV文件生成器,c,linux,csv,generator,C,Linux,Csv,Generator,是否有任何C程序可以在Linux机器上运行,并将创建给定维度(行x列)的csv文件并将其存储在硬盘上?如果您正在寻找现有的实用程序,您可能位于错误的站点,但类似这样的程序会打印一个带有双引号单元格且没有标题行的空csv文件: for (int i = 0; i < rows; ++i) { for (int j = 0; j < cols-1; ++j) { printf("\"\","); } printf("\"\"\n"); } for
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols-1; ++j) {
printf("\"\",");
}
printf("\"\"\n");
}
for(int i=0;i
获取一些任意数据并将其转换为CSV文件比较困难。首先,输入数据的格式是什么?第二,正确转义数据。如果您正在查找现有的实用程序,您可能位于错误的站点,但类似的内容会打印一个带有双引号单元格且没有标题行的空CSV文件:
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols-1; ++j) {
printf("\"\",");
}
printf("\"\"\n");
}
for(int i=0;i
获取一些任意数据并将其转换为CSV文件比较困难。首先,输入数据的格式是什么?其次,正确转义数据。CSV文件只是一个带有逗号分隔值的纯文本文件,因此您可以在纯文本编辑器中手动创建它。这里面有一个规范 第一行通常用于列名,例如: Name, Account no, Amount Niels, 1234, $0.99 Thomas, 8888, $10.00 Per, 3454, $9.00 Rasmus, 9412, $99.99 姓名、账号、金额 尼尔斯,1234美元,0.99美元 托马斯,8888美元,10.00美元 每人3454美元,9.00美元 拉斯穆斯,9412美元,99.99美元 用于创建纯空CSV文件的小型c程序可能如下所示:
/*
* makecsv.c
*/
#include <stdio.h>
int main(int argc, char **argv) {
if( argc != 3) {
printf("Mandatory arguments: <rows> <cols>\n");
return 1;
}
int row, col;
for(row = 0; row < atoi(argv[1]); row++) {
for(col = 0; col < atoi(argv[2]); col++) {
if(col > 0) {
printf(", ");
}
/* Default values are "row x col" */
printf("\"%dx%d\"", row, col);
}
printf("\r\n");
}
return 0;
}
/*
*makecsv.c
*/
#包括
int main(int argc,字符**argv){
如果(argc!=3){
printf(“强制参数:\n”);
返回1;
}
int row,col;
for(行=0;行0){
printf(“,”);
}
/*默认值为“行x列”*/
printf(“\%dx%d\”,行,列);
}
printf(“\r\n”);
}
返回0;
}
我将使用以下命令编译并运行它:
$ gcc -o makecvs makecsv.c
$ ./makecvs 3 4
"0x0", "0x1", "0x2", "0x3"
"1x0", "1x1", "1x2", "1x3"
"2x0", "2x1", "2x2", "2x3"
$
$ ./makecvs 3 4 > myFile.csv
$gcc-o makecvs makecsv.c
$./3.4
“0x0”、“0x1”、“0x2”、“0x3”
“1x0”、“1x1”、“1x2”、“1x3”
“2x0”、“2x1”、“2x2”、“2x3”
$
要将输出放在文件“unix方式”中,请使用以下命令将输出通过管道传输到文件:
$ gcc -o makecvs makecsv.c
$ ./makecvs 3 4
"0x0", "0x1", "0x2", "0x3"
"1x0", "1x1", "1x2", "1x3"
"2x0", "2x1", "2x2", "2x3"
$
$ ./makecvs 3 4 > myFile.csv
$./makecvs 3 4>myFile.csv
CSV文件只是一个带有逗号分隔值的纯文本文件,因此您可以在纯文本编辑器中手动创建它。这里面有一个规范 第一行通常用于列名,例如: Name, Account no, Amount Niels, 1234, $0.99 Thomas, 8888, $10.00 Per, 3454, $9.00 Rasmus, 9412, $99.99 姓名、账号、金额 尼尔斯,1234美元,0.99美元 托马斯,8888美元,10.00美元 每人3454美元,9.00美元 拉斯穆斯,9412美元,99.99美元 用于创建纯空CSV文件的小型c程序可能如下所示:
/*
* makecsv.c
*/
#include <stdio.h>
int main(int argc, char **argv) {
if( argc != 3) {
printf("Mandatory arguments: <rows> <cols>\n");
return 1;
}
int row, col;
for(row = 0; row < atoi(argv[1]); row++) {
for(col = 0; col < atoi(argv[2]); col++) {
if(col > 0) {
printf(", ");
}
/* Default values are "row x col" */
printf("\"%dx%d\"", row, col);
}
printf("\r\n");
}
return 0;
}
/*
*makecsv.c
*/
#包括
int main(int argc,字符**argv){
如果(argc!=3){
printf(“强制参数:\n”);
返回1;
}
int row,col;
for(行=0;行0){
printf(“,”);
}
/*默认值为“行x列”*/
printf(“\%dx%d\”,行,列);
}
printf(“\r\n”);
}
返回0;
}
我将使用以下命令编译并运行它:
$ gcc -o makecvs makecsv.c
$ ./makecvs 3 4
"0x0", "0x1", "0x2", "0x3"
"1x0", "1x1", "1x2", "1x3"
"2x0", "2x1", "2x2", "2x3"
$
$ ./makecvs 3 4 > myFile.csv
$gcc-o makecvs makecsv.c
$./3.4
“0x0”、“0x1”、“0x2”、“0x3”
“1x0”、“1x1”、“1x2”、“1x3”
“2x0”、“2x1”、“2x2”、“2x3”
$
要将输出放在文件“unix方式”中,请使用以下命令将输出通过管道传输到文件:
$ gcc -o makecvs makecsv.c
$ ./makecvs 3 4
"0x0", "0x1", "0x2", "0x3"
"1x0", "1x1", "1x2", "1x3"
"2x0", "2x1", "2x2", "2x3"
$
$ ./makecvs 3 4 > myFile.csv
$./makecvs 3 4>myFile.csv
我搜索了一下,发现:
因此,这只是csv处理的“库”的一个示例。也许值得一看glib和apr,看看他们是否也有一些库。或者你可以按照这里的建议“手工”完成 我搜索了一下,发现:
因此,这只是csv处理的“库”的一个示例。也许值得一看glib和apr,看看他们是否也有一些库。或者你可以按照这里的建议“手工”完成 你的输入数据是什么?一个空的“给定维度的csv文件”听起来不是很有用。你想解决的问题是什么?既然你只是想运行一个现有的程序,为什么你关心它是用什么写的呢?我的想法是将单元格填充到随机的“双”大小的数据中。不,我只是想,我会编译它,./a.out,瞧,我会有一个csv文件。坦率地说,我只需要四处看看,看看有哪些方法可以从内存中快速读取csv文件。你知道“Lorem Ipsum”之类的东西。C CSV解析器:C CSV编写器:你的输入数据是什么?一个空的“给定维度的CSV文件”听起来不是很有用。你想解决的问题是什么?既然你只是想运行一个现有的程序,为什么你关心它是用什么写的呢?我的想法是将单元格填充到随机的“双”大小的数据中。不,我只是想,我会编译它,./a.out,瞧,我会有一个csv文件。坦率地说,我只需要四处看看,看看有哪些方法可以从内存中快速读取csv文件。你知道的“Lorem Ipsum”之类的东西。C CSV解析器:C CSV编写器: