2025-12-02 12:18:48 +01:00

86 lines
1.8 KiB
C

/*
* versuch4_write-file.c
*
* Created on: Dec 1, 2025
* Author: jonny
*/
#include "versuch4_write-file.h"
#include "fatfs.h"
void versuch4_write_file(void)
{
FATFS fs;
FIL fp;
FRESULT res;
// mount fs
printf("1. mounting filesystem...\n");
res = f_mount(&fs, "/", 0);
if (res != FR_OK){
printf("Fehler beim mounten vom dateisystem\n");
return;
}
// open file
printf("2. opening file...\n");
res = f_open(&fp, "test-asd.txt", FA_CREATE_ALWAYS | FA_WRITE);
if (res != FR_OK)
{
printf("Fehler beim Oeffnen der Datei!\n");
return;
}
// write file
printf("3. writing file...\n");
UINT numBytesWritten = 0;
char buf[] = "heute ist der 02.12.2025";
res = f_write(&fp, buf, strlen(buf), &numBytesWritten);
if (res != FR_OK || numBytesWritten == 0)
printf("Fehler beim schreiben der datei\n");
printf("wrote %d bytes\n", numBytesWritten);
// close file
printf("4. closing file...\n");
f_close(&fp);
// open file
printf("5. opening file...\n");
res = f_open(&fp, "test-asd.txt", FA_READ);
if (res != FR_OK)
{
printf("Fehler beim Oeffnen der Datei!\n");
return;
}
// read file
printf("6. reading file...\n");
char bufRead[26];
uint8_t numBytesRead = 0;
res = f_read(&fp, bufRead, 25, &numBytesRead);
printf("read bytes: %d\n", numBytesRead);
bufRead[numBytesRead] = 0;
//printf("read text: %s\n", bufRead);
if (res == FR_OK && numBytesWritten > 0){
//bufRead[25] = 0;
printf("Gelesene Zeichen: %s\n", bufRead);
}
else
printf("Fehler beim lesen der Datei oder weniger als 25 Zeichen\n");
// close file
printf("4. closing file...\n");
f_close(&fp);
}