Écriture de journaux dans un fichier CSV (Python, langage C)

Dans mon travail, je devais prendre des données en continu → les écrire dans un fichier CSV et prendre un journal. J'ai essayé de le résumer sous forme de mémorandum.

environnement

OS:Raspbian Buster 10 Logiciel utilisé: Code-OSS (headmelted) 1.44.0

Flux de programme

Créez un fichier CSV vide dans la même hiérarchie que le programme et écrivez-y le journal. Ajoutez d'abord la date, par exemple "AD / mois / jour heure: minute: seconde, (données 1), (données 2) ..." Listez les données que vous souhaitez enregistrer derrière, séparées par des virgules.

Python

csvWrite.py


import csv
import datetime

n = 0
try:
    with open('logger.csv', 'a') as f:
        #Écrire le journal 10 fois
        while n < 10:
            #Date Heure
            now = datetime.datetime.now()
            nowTime = '{0:%Y/%m/%d %H:%M:%S}'.format(now)

            #Groupe de données
            data1 = 'data1'
            data2 = 'data2'
            data3 = 'data3'

            writeStr = nowTime + ',' + data1 + ',' + data2 + ',' +data3
            writeStr = writeStr.split(',')

            #Confirmation de la chaîne de caractères écrite
            #Exemple:'2020/03/06 15:00:00','data1','data2','data3'
            print('writeStr = %s' % writeStr)

            writer = csv.writer(f, quoting=csv.QUOTE_NONNUMERIC)
            writer.writerow(writeStr)

            n += 1

except FileNotFoundError as e:
    print(e)
except csv.Error as e:
    print(e)

Langage C

csvWrite.c


#include <stdio.h>
#include <time.h>

FILE *fp;
char *fname = "logger.csv";
struct tm tm;

int main(void)
{
    struct tm tm;
    time_t t;

    //Groupe de données
    char data1[] = "data1";
    char data2[] = "data2";
    char data3[] = "data3";

    //Ouvrez le fichier (s'il n'existe pas, il sera créé automatiquement)
    fp = fopen(fname, "a");
    if(fp == NULL){
        printf("file can't open¥n");
        return -1;
    }

    //Écrire le journal 10 fois
    for(int n = 0; n < 10; n++){
        //Date Heure
        t = time(NULL);
        localtime_r(&t, &tm);

        fprintf(fp, "\"%04d/%02d/%02d %02d:%02d:%02d\",",
            tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday,
            tm.tm_hour, tm.tm_min, tm.tm_sec);
        fprintf(fp, "\"%s\",\"%s\",\"%s\"\n", data1, data2, data3);

        //Confirmation de la chaîne de caractères écrite
        //Exemple:"2020/03/06 15:00:00","data1","data2","data3"
        printf("writeStr = \"%04d/%02d/%02d %02d:%02d:%02d\",\"%s\",\"%s\",\"%s\"\n", 
            tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday,
            tm.tm_hour, tm.tm_min, tm.tm_sec, data1, data2, data3);
    }

    fclose(fp);
    return 0;
}

Résumé

Lorsque je développe l'IoT, je laisse un journal sur le serveur, mais lorsque je ne peux pas me connecter à Internet Le sentiment de désespoir lorsque le journal disparaît pendant ce temps est incroyable, je voudrais donc créer un fichier CSV sur la carte SD et l'enregistrer avec diligence de cette manière.

Recommended Posts

Écriture de journaux dans un fichier CSV (Python, langage C)
[Python] Ecrire dans un fichier csv avec Python
Introduction à Protobuf-c (langage C ⇔ Python)
Lecture et écriture de fichiers CSV Python
[Python] Convertit les délimiteurs de fichier csv en délimiteurs de tabulation
Comment lire un fichier CSV avec Python 2/3
Introduction au langage Python
Lire le fichier csv Python
Essayez de créer un module Python en langage C
J'ai essayé de toucher un fichier CSV avec Python
Comment convertir un fichier JSON en fichier CSV avec Python Pandas
Script Python qui crée un fichier JSON à partir d'un fichier CSV
Écrire en csv avec Python
Télécharger le fichier csv avec python
Appeler des fonctions du langage C depuis Python pour échanger des tableaux multidimensionnels
Code Python pour l'écriture de données CSV dans le stockage d'objets DSX
Utilisez un langage de script pour une vie C ++ confortable-OpenCV-Port Python vers C ++ -
Ecriture du langage C avec Sympy (métaprogrammation)
Comment envelopper C en Python
Lire et écrire du CSV avec Python
Python pour passer d'une autre langue
Python facile à apprendre en écrivant
Téléchargement de fichiers vers Azure Storage (Python)
Appeler le langage C depuis Python (python.h)
Après avoir appelé le fichier Shell sur Python, convertissez CSV en Parquet.
[Python] Comment stocker un fichier csv en tant que données de tableau à une dimension
Langage C pour voir et se souvenir de la partie 2 Appeler le langage C à partir de la chaîne Python (argument)
4 langage de comparaison de fermeture (Python, JavaScript, Java, C ++)
Lire le fichier CSV avec python (Télécharger et analyser le fichier CSV)
Comment convertir Python en fichier exe
Ecrire le fichier O_SYNC en C et Python
Langage C pour voir et se souvenir de la partie 1 Appeler le langage C depuis Python (bonjour le monde)
Je veux analyser les journaux avec Python
[Python] Comment lire le fichier csv (méthode read_csv du module pandas)
Lire Python csv et exporter vers txt
Communication socket par langage C et Python
[Part1] Scraping avec Python → Organisez jusqu'à csv!
Python> Numéros de sortie de 1 à 100, 501 à 600> Pour csv
Générer un langage C à partir d'une expression S avec Python
Lisez le fichier CSV avec Python et convertissez-le en DataFrame tel quel
Script Python qui génère tous les enregistrements de la table Oracle dans un fichier CSV
Langage C pour voir et se souvenir de la partie 4 Appelez le langage C depuis Python (argument) double
Erreur due à UnicodeDecodeError lors de la lecture d'un fichier CSV avec Python [Pour les débutants]
Une introduction à Python pour les programmeurs en langage C
Langage C pour voir et se souvenir de la partie 5 Appel du langage C à partir du tableau Python (argument)
Différentes façons de lire la dernière ligne d'un fichier csv en Python
[Python] Analyser le dossier, y compris les sous-dossiers → Exporter la liste des fichiers au format CSV
J'ai fait un module en langage C qui filtre les images chargées par Python
Langage C pour voir et se souvenir de la partie 3 Appelez le langage C depuis Python (argument) c = a + b
Comment utiliser la bibliothèque C en Python
Grattage de la nourriture avec python et sortie en CSV
Modèle d'extension Python C / C ++ - Passez des données à Python en tant que np.array
Une personne inexpérimentée en Python essaie de frapper 100 traitement du langage 14-16
Comment générer une séquence en Python et C ++
[Python] Conversion de DICOM en PNG ou CSV
Importer un fichier Excel depuis Python (enregistré dans DB)
Porté un compilateur de langage homebrew naïf sur Python
Du dessin de fichier au graphique en Python. Élémentaire élémentaire
Méthode de contrôle exclusive multi-processus en langage C
[Python] Comment lire des fichiers Excel avec des pandas