色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c語言csv轉json

洪振霞2年前8瀏覽0評論

CSV(Comma Separated Values)是一種簡單的文件格式,它由一組逗號分隔的值組成,每個值表示一個字段。CSV經常用于存儲表格數據。JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,它經常用于在應用程序和Web服務之間傳輸數據。在本文中,我們將介紹如何使用C語言將CSV轉換為JSON。

我們的CSV文件格式如下:

name,age,city
John,25,New York
Alice,30,Los Angeles

我們要將其轉換為以下JSON格式:

[{"name":"John","age":25,"city":"New York"},
{"name":"Alice","age":30,"city":"Los Angeles"}]

首先,我們需要使用C語言的文件操作函數打開CSV文件,并讀取文件中的所有行:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
FILE *fp;
char csvLine[1024];
char *token;
char *name, *age, *city;
fp = fopen("data.csv", "r");
if (fp == NULL) {
printf("Error opening file\n");
return 1;
}
while (fgets(csvLine, 1024, fp) != NULL) {
// Process each CSV line
}
fclose(fp);
return 0;
}

接下來,我們需要解析每個CSV行并將其轉換為JSON對象。我們可以使用strtok函數將每行分割為字段,并使用sprintf函數構造JSON字符串。最后,我們可以使用printf函數輸出JSON字符串:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
FILE *fp;
char csvLine[1024];
char *token;
char *name, *age, *city;
fp = fopen("data.csv", "r");
if (fp == NULL) {
printf("Error opening file\n");
return 1;
}
printf("[");
while (fgets(csvLine, 1024, fp) != NULL) {
token = strtok(csvLine, ",");
name = token;
token = strtok(NULL, ",");
age = token;
token = strtok(NULL, ",");
city = token;
if (name != NULL && age != NULL && city != NULL) {
char jsonString[1024];
sprintf(jsonString, "{\"name\":\"%s\",\"age\":%s,\"city\":\"%s\"}", name, age, city);
printf("%s,", jsonString);
}
}
printf("]");
fclose(fp);
return 0;
}

完成后我們可以運行程序并將輸出保存到文件中,這樣我們就得到了一個可以使用的JSON文件。

本文介紹了如何使用C語言將CSV文件轉換為JSON格式。我們使用了文件操作函數和字符串操作函數對CSV文件進行了解析,并使用sprintf函數構造了JSON字符串。這種方法可以幫助我們將表格數據轉換為可用于Web服務的格式。