Schritt-für-Schritt-Anleitung (Pfad A): CSV-Export für Fahrten

In dieser Anleitung erweitern Sie die App um eine Funktion zum Export der gespeicherten Fahrten als CSV-Datei.


1. Datei fahrtenExport.js anlegen

Erstellen Sie im Ordner logic/ die Datei fahrtenExport.js.


2. Funktion zum Erzeugen und Teilen der CSV-Datei erstellen

Fügen Sie folgenden Code in fahrtenExport.js ein:


import * as FileSystem from 'expo-file-system';
import * as Sharing from 'expo-sharing';

export async function exportiereFahrtenAlsCSV(fahrten) {
  if (!fahrten || fahrten.length === 0) {
    alert('Keine Fahrten zum Exportieren vorhanden.');
    return;
  }

  const header = ['Datum', 'Startzeit', 'Endzeit', 'Dauer (s)', 'Entfernung (km)', 'Typ'];
  const zeilen = fahrten.map(f => [
    f.datum,
    f.startzeit,
    f.endzeit,
    f.dauer,
    f.entfernung,
    f.typ || ''
  ]);
  const csvArray = [header, ...zeilen];
  const csvText = csvArray.map(z => z.join(';')).join('\n');

  const fileUri = FileSystem.documentDirectory + 'fahrten.csv';
  await FileSystem.writeAsStringAsync(fileUri, csvText, { encoding: FileSystem.EncodingType.UTF8 });

  await Sharing.shareAsync(fileUri);
}

3. Export-Funktion in App.js einbinden

Import am Anfang der Datei:


import { exportiereFahrtenAlsCSV } from './logic/fahrtenExport';

Export-Button verwenden:


 exportiereFahrtenAlsCSV(fahrten)} style={{ marginVertical: 10 }}>
  

Benötigte Pakete installieren:


npx expo install @expo/vector-icons expo-file-system expo-sharing

Ergebnis

Die App kann nun eine CSV-Datei aller gespeicherten Fahrten erzeugen und über das Betriebssystem teilen.

Zuletzt geändert: Freitag, 5. Dezember 2025, 15:31
Herausgeber: Land Baden-Württemberg, vertreten durch das Zentrum für Schulqualität und Lehrerbildung (ZSL), Heilbronner Straße 314, 70469 Stuttgart, Telefon 0711/21859-0, poststelle@zsl.kv.bwl.de
Verantwortlich im Sinne des Presserechts: ZSL, Irmgard Mühlhuber, Ref. 24 "Digitalisierung, Medienbildung", Heilbronner Straße 314, 70469 Stuttgart, Telefon 0711/21859-240, digitalebildung@zsl.kv.bwl.de
Kontakt zum/r behördlichen Datenschutzbeauftragte/n: datenschutz@zsl.kv.bwl.de