Hallo.
Ich habe mit der jährlichen Versetzung begonnen, doch in diesem Jahr habe ich ein Problem mit dem Encoding der Dateien
- students.csv
- extrastudents.csv
Ein ähnliches Thema wurde vor einiger Zeit bereits hier angesprochen aber dort leider nicht gelöst. Daher jetzt ein neuer Versuch:
Aus der Schulverwaltung habe ich wie üblich die neue Datei „schueler.txt“ erhalten. Da in der Datei noch ein paar manuelle Änderungen zu erledigen sind, kann ich die Datei noch nicht 1:1 verwenden.
Daher folgende Schritte:
- zunächst diese Datei auf den Server kopiert
- dann
sophomorix-newfile ./schueler.txt –name students.csv
- der Befehl
file students.csv
zeigt:
students.csv: Unicode text, UTF-8 text, with CRLF line terminators
- anschließend habe ich
sophomorix-check
laufen lassen mit diesem Ergebnis:
#### 0 ERRORS, 0 WARNINGS -> let's go ####
#### Creating lock in /var/lib/sophomorix/lock/sophomorix.lock ####
#### /usr/sbin/sophomorix-check started ... ####
#### Cleaning up last check ####
Encoding extrastudents.csv: UTF8 (ENCODING=auto,*_FORCE=FALSE, *_CHECKED=UTF8)
Encoding students.csv: UTF8 (ENCODING=auto,*_FORCE=FALSE, *_CHECKED=UTF8)
Encoding teachers.csv: UTF8 (ENCODING=auto,*_FORCE=FALSE, *_CHECKED=UTF8)
und am Ende:
153 users can be added in sophomorix.add
1127 users can be updated in sophomorix.update
14 users can be killed in sophomorix.kill
135 users are not to be changed in sophomorix.nochange
2 users with errors in sophomorix.error
Da es bei zwei Einträgen offenbar einen Fehler gibt, habe ich mich auf die Suche begeben und vermute eine Stelle bei einem Akzent in einem Vornamen:
Ramón
Jetzt kommt das Merkwürdige:
Wenn ich die Datei z.B. mit mcedit students.csv
oder auch mit vi students.csv
öffne und das ó gegen ein normales o ersetze und speichere, läuft sophomorix-check nicht mehr! Warum ist das so?
Wenn ich jetzt den file-Befehl verwende, sehe ich:
students.csv: ASCII text, with CRLF line terminators
anstelle von UTF-8.
Wenn ich nun nochmal sophomorix-check versuche, läuft es in diesen Fehler:
#### 0 ERRORS, 0 WARNINGS -> let's go ####
#### Creating lock in /var/lib/sophomorix/lock/sophomorix.lock ####
#### /usr/sbin/sophomorix-check started ... ####
#### Cleaning up last check ####
Encoding extrastudents.csv: UTF8 (ENCODING=auto,*_FORCE=FALSE, *_CHECKED=UTF8)
#### Removing lock in /var/lib/sophomorix/lock/sophomorix.lock ####
#### ENCODING=auto failed: Set ENCODING to the desired value and ENCODING_FORCE to 'True'####
Calling console printout
ERROR -1: ENCODING=auto failed: Set ENCODING to the desired value and ENCODING_FORCE to 'True'
Warum ist das so? Was hat die Datei extrastudents.csv nun plötzlich damit zu tun? (file extrastudents.csv
zeigt: ASCII text – die Datei wurde aber nicht angerührt).
Kennt jemand das Problem? Was läuft hier schief?
Danke für’s Mitdenken,
Michael