Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Чем перекодировать текст из UTF-8 в Windows-1251 ?  (Прочитано 15494 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Givizub

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1435
  • Ubuntu 22.04
    • Просмотр профиля
Чем и как перекодировать текстовый файл из UTF-8 в Windows-1251?
В Gedit при попытке сохранения пишет:
Документ содержит один или более символов, которые не имеют представления в указанной кодировке символов. Выберите другую кодировку и попробуйте еще раз.
Или этот файл совсем нельзя сохранить в Windows-1251?
R.I.P. - Unity

Оффлайн Phlya

  • Старожил
  • *
  • Сообщений: 2219
  • Фля, Цыганский барон, Винни Пух
    • Просмотр профиля
Re: Чем перекодировать текст из UTF-8 в Windows-1251 ?
« Ответ #1 : 30 Апреля 2013, 20:47:26 »
Если есть символы, которых в целевой кодировке в принципе нет, то ничего не сделаешь, кроме как заменить их.
Ubuntu 14.04 (Unity), MSI GE40

Оффлайн Haron Prime

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 11313
  • Нетолерантный социопат
    • Просмотр профиля
Re: Чем перекодировать текст из UTF-8 в Windows-1251 ?
« Ответ #2 : 30 Апреля 2013, 20:59:12 »
я пользуюсь sublime-text-2 - никогда не возникало проблем со сменой кодировки

Оффлайн Givizub

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1435
  • Ubuntu 22.04
    • Просмотр профиля
Re: Чем перекодировать текст из UTF-8 в Windows-1251 ?
« Ответ #3 : 30 Апреля 2013, 21:05:25 »
Цитата: sublime-text-2
Not all characters are representable in Cyrillic (Windows 1251), falling back to UTF-8

Subline Text 2 тоже не хочет. (Хотя, текстовый редактор хороший)
Очевидно, есть символы которые не кодируются.
R.I.P. - Unity

Оффлайн Haron Prime

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 11313
  • Нетолерантный социопат
    • Просмотр профиля
Re: Чем перекодировать текст из UTF-8 в Windows-1251 ?
« Ответ #4 : 30 Апреля 2013, 21:13:10 »
возможно, что я с такими просто не сталкивался, т.к. у меня подобное не происходило ни разу

*а редактор не просто хороший, а замечательный
лично для меня он оказался идеальной заменой notepad++
советую познакомиться с ним поближе - не пожалеете

adawdp

  • Гость
— А если „старичка“ Штирлица IV попробовать у меня в VirtualBox есть и под Wine он по-моему работает я как-то запускал из Ubuntu находящийся на Windows диске Штирлиц.
— UTF и 7 и 8 там есть…
— Штирлиц по-моему портативный от рождения…

Оффлайн Дмитрий Бо

  • Погонщик серверов
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 3549
  • Я не техподдержка, я за порядком слежу
    • Просмотр профиля
iconv?

Оффлайн Givizub

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1435
  • Ubuntu 22.04
    • Просмотр профиля
iconv?
іconv: illegal input sequence at position 92726
Весь текст в виде "������".
R.I.P. - Unity

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Drone93,
man iconvL~$ echo "Привет" | iconv -f utf-8 -t windows-1251 > t.t
L~$ cat t.t
�����
L~$
L~$ cat t.t | iconv -t utf-8 -f windows-1251
Привет
L~$
Wars ~.o

Оффлайн Givizub

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1435
  • Ubuntu 22.04
    • Просмотр профиля
Делаю так же, пишет "iconv: illegal input sequence at position 92726"
Значит, что в windows-1251 нету такого символа.

Разве что, найти этот 92726-й символ.
R.I.P. - Unity

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Код: (bash) [Выделить]
echo '123☃456' | iconv -f UTF-8 -t CP1251//IGNORE

Оффлайн Samael

  • Участник
  • *
  • Сообщений: 169
  • Учусь
    • Просмотр профиля
А что говорит enca?
Ubuntu 8.04 @ Dell Inspiron 1501 -> Mint 14 @ Acer AspireOne 722

Оффлайн Givizub

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1435
  • Ubuntu 22.04
    • Просмотр профиля
А тексто
Код: (bash) [Выделить]
echo '123☃456' | iconv -f UTF-8 -t CP1251//IGNORE
iconv -f UTF-8 -t CP1251//IGNORE Мой-документ.txt
Много значков �����
iconv: illegal input sequence at position 103541
Текстовый документ очень длинный (Электронная книга, там до сотни страниц!). В терминале полностью не отображается.
R.I.P. - Unity

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Drone93,
-f и -t обмен на -t и -f ?
Wars ~.o

Оффлайн Givizub

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1435
  • Ubuntu 22.04
    • Просмотр профиля
А что говорит enca?
Ничего не сказала, или я не правильно что-то сделал (windows1251 и CP1251 - одно и то же?) :

~/Документы/Книжки$ enconv -L ukrainian -x CP1251 *.txt


Пользователь решил продолжить мысль 01 Мая 2013, 21:31:53:
Drone93,
-f и -t обмен на -t и -f ?

Выходит "ненадовго" и текст в терминале отображается не весь. Нужно, чтобы его сохраняло в файл.
« Последнее редактирование: 01 Мая 2013, 21:31:53 от Drone93 »
R.I.P. - Unity

 

Страница сгенерирована за 0.042 секунд. Запросов: 25.