read csv
This commit is contained in:
parent
4da03f099c
commit
4b752b57d2
44
content/posts/2023/c/read-csv.md
Normal file
44
content/posts/2023/c/read-csv.md
Normal file
@ -0,0 +1,44 @@
|
||||
---
|
||||
title: "♾️ Чтение CSV на Си"
|
||||
date: 2023-06-05T22:08:07+03:00
|
||||
draft: false
|
||||
tags: [c, tips]
|
||||
---
|
||||
|
||||
## Файл CVS
|
||||
|
||||
```text
|
||||
id,text,from
|
||||
1,text message,twitter
|
||||
2,i live this language,book
|
||||
```
|
||||
|
||||
## Код
|
||||
|
||||
```c
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
int main() {
|
||||
char buffer[80];
|
||||
FILE *stream = fopen("example.csv", "r");
|
||||
|
||||
while (fgets(buffer, 80, stream)) {
|
||||
// Символ разделитель
|
||||
char *token = strtok(buffer, ",");
|
||||
|
||||
// Если нам нужен только первый столбец каждой строки
|
||||
if (token) {
|
||||
printf("%s\n", token);
|
||||
}
|
||||
|
||||
// Если нам нужны все значения подряд
|
||||
while (token) {
|
||||
printf("%s\n", token);
|
||||
token = strtok(NULL, ",");
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
```
|
Loading…
Reference in New Issue
Block a user