J'ai un fichier CSV avec des lignes contenant du texte / des mots contenant un caractère spécial comme ñ
, ce qui s'est passé, c'est que lorsque j'ai essayé d'importer le fichier, les mots avec des caractères au-dessus ou similaires seront convertis en 0 . Je ne sais pas si cela est lié à l'encodage, j'ai trouvé des solutions dans StackOverflow mais aucune d'entre elles ne semble fonctionner.
J'utilise le ToModel
use Maatwebsite\Excel\Concerns\ToModel;
Pour reproduire cela, essayez simplement de mettre un caractère spécial dans l'une des cellules de votre CSV, puis importez-le comme:
Excel::import(new CsvImport, request()->file('file'));
Les données insérées résultantes qui ont un caractère spécial seront stockées sous la forme 0
est-ce que l'un de vous a fait l'expérience de celui-ci?
Oui moi aussi @fmsthird
pareil ici @fmsthird
Essayez de définir le codage d'entrée sur le codage dans lequel se trouve votre fichier: https://github.com/Maatwebsite/Laravel-Excel/blob/3.1/config/excel.php#L76
Le problème est que les fichiers csv sont générés à partir d'un système tiers sur lequel je n'ai aucun contrôle et sont livrés avec charset = unknown-8bit donc le codage n'est pas défini sur le fichier source et pour parcourir chaque caractère, les fichiers csv contiennent des centaines de milliers de lignes qui peut expirer avant la fin
Commentaire le plus utile
est-ce que l'un de vous a fait l'expérience de celui-ci?