2016-12-03 6 views
-3

Ich muss Daten in einer CSV-Datei alle 600 ms mit einer C# -Anwendung schreiben. Die Frage: ist es besser, die Datei jedes Mal zu öffnen und zu schließen oder sie bis zum Ende der Schreib-Datenaktionen offen zu halten? Hinweis: Ich werde jeden Tag Dateinamen ändern und jeder 60000 DatensatzC# Daten in CSV-Datei schreiben

Thanck viel für Ihre Meinungen

+0

Am besten verwenden Sie die Oledb-Schnittstelle, um Lese-/Schreibvorgänge durchzuführen, die die Datei nicht technisch öffnen. Oledb behandelt die CSV-Datei als eine Datenbank, die schneller ist als das Öffnen der Datei. Siehe Beitrag: http://stackoverflow.com/questions/6813607/parsing-csv-using-oledb-using-c-sharp – jdweng

+0

@jdweng _ "Oledb behandelt die CSV-Datei als eine Datenbank, die schneller ist als das Öffnen der Datei" _ - Was? – CodeCaster

+0

Absolut korrekt. Access und Excel sind Datenbanken, und die OLEDB (oder ACE in neueren Versionen von Access und Excel) werden gelesen, indem auf die Sektoren auf dem Datenträger zugegriffen wird und nicht die offene Dateisystemmethode verwendet wird. Mit CSV wird das Gleiche gemacht. – jdweng

Antwort

-1

CSV-Dateien sind einfach zu schreiben. Wenn Sie nicht wissen, wie man in eine Datei schreibt, ist der dotnetperls Ihr Freund. Sie können einfach BinaryWriter.Write() anrufen, um etwas zu schreiben. Schreibe einen Wert und dann ein Komma. Das ist es! Wenn diese Datei zum Zeitpunkt der Ausführung der Anwendung vom Benutzer bearbeitet wird, lassen Sie sie nicht geöffnet. Andernfalls sorgt das Offenhalten dafür, dass nichts Unerwartetes passiert.