Мне нужно удалить символы Windows из файла csv перед разбором в базу данных. Это символы, такие как "длинный дефис" или "слово перевернутые запятые",
В php я могу удалить с помощью mb_convert_encoding(), как я могу сделать то же самое в perl?
Мне нужно удалить только символы Windows, а не символы utf-8
Функция from_to()
из Encode, по-видимому, довольно близка к mb_convert_encoding()
.
Но похоже, что у вас есть файл, где некоторые из них закодированы в CP1252, а некоторые из них находятся в UTF8. Это кажется странным, и я не уверен, как вы скажете, какой бит файла имеет каждая кодировка.
mb_convert_encoding()
не «удаляет» символы; он конвертирует между двумя кодировками. И сначала вы должны знать ваши входные и выходные кодировки. Кроме того, что такое символ «Windows» и почему возникает проблема, если вы принимаете остальную часть каталога Unicode?