Vous dites à Postgres que la source serait encodée en LATIN1 :
Mais ce n'est pas le cas ou le fichier est endommagé. Sinon, nous ne verrions pas le message d'erreur. Quel est le véritable encodage de '$FilePath\file.txt' ?
Le client_encoding actuel n'est pas pertinent pour cela puisque, citant le manuel sur COPY
:
(\copy n'est qu'un wrapper pour SQL COPY en psql.)
Et votre server_encoding est en grande partie hors de propos, aussi - tant que Postgres peut utiliser un conversion intégrée
et l'encodage cible contient tous les caractères de l'encodage source - ce qui est le cas pour LATIN1 -> UTF8 :iso_8859_1_to_utf8 .
La source d'erreur restante est donc votre fichier, qui n'est presque certainement pas valide LATIN1.