Piszę dość podstawowy program do użytku osobistego, ale naprawdę chcę się upewnić, że korzystam z dobrych praktyk, szczególnie jeśli zdecyduję się na późniejszą poprawę.Jakie są najlepsze praktyki dla plików we/wy w C?
Do wszystkich celów i programów program akceptuje niektóre pliki wejściowe jako argumenty, otwiera je przy użyciu fopen()
odczytu z plików, robi rzeczy z tymi informacjami, a następnie zapisuje wynik jako kilka różnych plików w podfolderze. na przykład, jeśli program jest ~/program
następnie pliki wyjściowe są zapisywane w ~/program/csv/
Właśnie wyjście bezpośrednio do plików, na przykład output = fopen("./csv/output.csv", "w");
, na niej drukować z fprintf(output,"%f,%f", data1, data2);
w pętli, a następnie zamknij z fclose(output);
a ja po prostu czuję to jest zła praktyka.
Czy powinienem zapisywać go w katalogu tymczasowym, do którego jest on zapisywany, a następnie przesuwać go po zakończeniu? Czy powinienem używać bardziej zaawansowanych bibliotek plików i/o? Czy całkowicie nad tym zastanawiam?
Za coś tak prostego, myślę, że nad nim zastanawiasz. Jeśli jesteś jedynym procesem (lub wątkiem) zapisującym do pliku (ów), nie ma potrzeby dodatkowej pracy. –
Witamy w przepełnieniu stosu. Proszę przeczytać [FAQ] przed zbyt długo. To może być pytanie bez precyzyjnej odpowiedzi. W większości przypadków to, co robisz, jest w porządku. Katalog tymczasowy jest prawdopodobnie przesadą. Możesz chcieć sprawdzić, czy 'fclose()' działa; jeśli nie, musisz założyć, że plik nie został utworzony poprawnie i prawdopodobnie powinien go usunąć. Możesz chcieć sprawdzić każdą operację wyjściową; to teoretycznie poprawny sposób na zrobienie tego. Oczywiście, musisz sprawdzić 'fopen()' od czasu awarii, jeśli tego nie zrobisz. –