Как конвертировать utf 8 в windows 1251

Кодировка текста – это схема нумерации символов, в которой каждому символу, цифре или знаку присвоено соответствующее число. Кодировку используют для

Содержание

  1. Как изменить кодировку текстового файла на UTF-8 или Windows 1251
  2. Блокнот Windows
  3. Notepad++
  4. Akelpad
  5. Как преобразовать utf 8 в windows 1251
  6. Интересные решения Perl. Вопросы и ответы
  7. Как конвертировать строку из UTF-8 в Windows-1251?
  8. Комментарии посетителей сайта
  9. Как преобразовать utf 8 в windows 1251
  10. Заметки Лёвика
  11. web программирование, администрирование и всякая всячина, которая может оказаться полезной
  12. Если не работает iconv
  13. iconv array для массива
  14. Как сменить кодировку файла? Notepad++ редактор с подсветкой синтаксиса, кодировка Utf-8 без BOM
  15. Чем вообще хорош этот редактор?

Как изменить кодировку текстового файла на UTF-8 или Windows 1251

Кодировка текста – это схема нумерации символов, в которой каждому символу, цифре или знаку присвоено соответствующее число. Кодировку используют для сохранения и обработки текста на компьютере. Каждый раз при сохранении текста в файл он сохраняется с использованием определенной схемы кодирования, и при открытии этого файла необходимо использовать такую же схему, иначе восстановить исходный текст не получится. Самыми популярными кодировками для кириллицы сейчас являются UTF-8, Windows-1251 (CP1251, ANSI).

Для того чтобы программа смогла правильно открыть текстовый файл, иногда приходится вручную менять кодировку, перекодируя текст из одной схемы в другую. Например, не редко возникают проблемы с открытием файлов CSV, XML, SQL, TXT, PHP.

В этой небольшой статье мы расскажем о том, как изменить кодировку текстового файла на UTF-8, Windows-1251 или любую другую.

Блокнот Windows

Если вы используете операционную систему Windows 10 или Windows 11, то вы можете изменить кодировку текста с помощью стандартной программы Блокнот. Для этого нужно открыть текстовый файл с помощью Блокнота и воспользоваться меню « Файл – Сохранить как ».

082621 0816 1

В открывшемся окне нужно указать новое название для файла, выбрать подходящую кодировку и нажать на кнопку « Сохранить ».

082621 0816 2

К сожалению, для подобных задач программа Блокнот часто не подходит. С ее помощью нельзя открывать документы большого размера, и она не поддерживает многие кодировки. Например, с помощью Блокнота нельзя открыть текстовые файлы в DOS 866.

Notepad++

Notepad++ (скачать) является одним из наиболее продвинутых текстовых редакторов. Он обладает подсветкой синтаксиса языков программирования, позволяет выполнять поиск и замену по регулярным выражениям, отслеживать изменения в файлах, записывать и воспроизводить макросы, считать хеш-сумы и многое другое. Одной из основных функций Notepad++ является поддержка большого количества кодировок текста и возможность изменения кодировки текстового файла в UTF-8 или Windows 1251.

Для того чтобы изменить кодировку текста с помощью Notepad++ файл нужно открыть в данной программе. Если программа не смогла правильно определить схему кодирования текста, то это можно сделать вручную. Для этого нужно открыть меню « Кодировки – Кириллица » и выбрать нужный вариант.

082621 0816 3

После открытия текста можно изменить его кодировку. Для этого нужно открыть меню « Кодировки » и выбрать один из вариантов преобразования. Notepad++ позволяет изменить текущую кодировку текста на ANSI (Windows-1251), UTF-8, UTF-8 BOM, UTF-8 BE BOM, UTF-8 LE BOM.

082621 0816 4

После преобразования файл нужно сохранить с помощью меню « Файл – Сохранить » или комбинации клавиш Ctrl-S.

Akelpad

Akelpad (скачать) – достаточно старая программа для работы с текстовыми файлами, которая все еще актуальна и может быть полезной. Фактически Akelpad является более продвинутой версией стандартной программы Блокнот из Windows. С его помощью можно открывать текстовые файлы большого размера, которые не открываются в Блокноте, выполнять поиск и замену с использованием регулярных выражений и менять кодировку текста.

Для того чтобы изменить кодировку текста с помощью Akelpad файл нужно открыть в данной программе. Если после открытия файла текст не читается, то нужно воспользоваться меню « Файл – Открыть ».

082621 0816 5

В открывшемся окне нужно выделить текстовый файл, снять отметку « Автовыбор » и выбрать подходящую кодировку из списка. При этом в нижней части окна можно видеть, как будет отображаться текст.

082621 0816 6

Для того чтобы изменить текущую кодировку текста нужно воспользоваться меню « Файл – Сохранить как » и сохранить документ с указанием новой схемы кодирования.

082621 0816 7

В отличие от Notepad++, текстовый редактор Akelpad позволяет сохранить файл в практически любой кодировке. В частности, доступны Windows 1251, DOS 886, UTF-8 и многие другие.

Источник

Как преобразовать utf 8 в windows 1251

n 181 s

Интересные решения Perl. Вопросы и ответы

Как конвертировать строку из UTF-8 в Windows-1251?

Есть как минимум 4 варианта:

1. Написать собственную процедуру перекодировки.
В этом случае придется потратить время на изучение алгоритмов.

2. Можно использовать модуль Convert::Cyrillic, однако он испытывает зависимость от модуля Unicode::Map8, который легко установить под *nix, но с поиском модуля под ActiveState Perl 5.8 могут возникнуть проблемы.

3. Можно использовать модуль Text::Iconv, который доступен как для Perl 5.6, так и для Perl 5.8.

4. Если Вы используете Perl 5.8, то конвертирование можно прозвести с помощью Encode:

Опубликовано: 19 ноября 2005 года.

Комментарии посетителей сайта

Григорий 03.08.2016 17:20

Отлично. Ничего лишнего и всё понятно. Спасибо!

Дмитрий 25.01.2012 15:46

Спасибо, за хороший пример и пояснения!

Андрей 25.05.2011 00:43
Действительно. Четвертый метод сработал. Спасибо.

Есть ли способ для конвертации массива, например,
Encode::from_to(@var_arr, ‘windows-1251’, ‘utf-8’);

Пытался использовать
use open OUT => ‘:utf8’;
use open ‘:utf8’;

но ничего не вышло.

Ответ: 07.09.2006 20:20
Для массива используйте функцию map или же обыкновенный цикл.

Валерий 05.09.2006 04:14
кстати, может есть какой-нибудь вариант вывода perl’ом в браузер текста в UTF-8 без использования модулей Unicode и Text::Iconv. например, с использованием модуля CGI.

и почему не помогает вывод заголовка?
print «Content-type: text/html; charset=utf-8

Источник

Как преобразовать utf 8 в windows 1251

Сообщения: 3665
Благодарности: 1562

» width=»100%» style=»BORDER-RIGHT: #719bd9 1px solid; BORDER-LEFT: #719bd9 1px solid; BORDER-BOTTOM: #719bd9 1px solid» cellpadding=»6″ cellspacing=»0″ border=»0″>

contributor

Сообщения: 27459
Благодарности: 8022

Сообщения: 3665
Благодарности: 1562

поясните плз, AFAIK utf16le (=Unicode) Native-кодировка начиная с Win2K

Источник

Заметки Лёвика

web программирование, администрирование и всякая всячина, которая может оказаться полезной

При помощи функции php iconv (строго говоря, это не совсем функция PHP, она использует стороннюю библиотеку (есть iconv.dll и php_iconv.dll или iconv.so), которой может не быть на хостинге) легко преобразовать кодировку (например, из windows-1251 в utf-8 и наоборот:

Если не работает iconv

Т.е. чтобы преобразовать текст из кодировки windows-1251 в UTF-8 следует выполнить:
mb_convert_encoding($s,»UTF-8″,»windows-1251″);

iconv array для массива

Метки: iconv

Опубликовано Пятница, Октябрь 21, 2011 в 15:02 в следующих категориях: Без рубрики. Вы можете подписаться на комментарии к этому сообщению через RSS 2.0. Вы можете оставить комментарий. Пинг отключен.

Автор будет признателен, если Вы поделитесь ссылкой на статью, которая Вам помогла:
BB-код (для вставки на форум)

html-код (для вставки в ЖЖ, WP, blogger и на страницы сайта)

ссылка (для отправки по почте)

Как быть с запросом select к базе mssql не понимает кирилицу
“select
[Название]
,[номер]
, [Removed]
from imdb.dbo. Оконечное оборудование “;

Следует привести столбцы (или всю базу данных сразу) к соответствующему сравнению (кодировке)
ALTER DATABASE COLLATE Cyrillic_General_CI_AS

Или использовать Nvarchar

declare @test TABLE
(
Col1 varchar(40),
Col2 varchar(40),
Col3 nvarchar(40),
Col4 nvarchar(40)
)
INSERT INTO @test VALUES
(‘иытание’,N’иытание’,’иытание’,N’иытание’)
SELECT * FROM @test

Если изменяю версию php 5.6 то не перекодируется. Не подскажете?

Источник

Как сменить кодировку файла? Notepad++ редактор с подсветкой синтаксиса, кодировка Utf-8 без BOM

money birds728

notepad++ download

Notepad++ — отличный текстовый редактор!

В статье о кодировках текста я описал основные моменты, показывающие, почему необходимо учитывать кодировку файла (например, при создании html-страницы). Здесь же я опишу простой способ выставления нужной кодировки текста с помощью простого и быстрого редактора Notepad++.

Чтобы скачать данную программу, заходим на официальный сайт — Notepad-plus-plus.org — далее ищем ссылку «download», кликаем по ней и выбираем «Notepad++ v*** Installer», где вместо звёздочек будет текущая версия редактора. Скачиваем и устанавливаем, никаких сложностей при установке нет.

Чем вообще хорош этот редактор?

notepad++ highlight

Notepad++ понимает php и подсвечивает синтаксис языка. Кликабельно

Последняя особенность очень важна, например, при редактировании шаблонов движка вашего сайта (напр., WordPress). Почему? Потому что все файлы WP по умолчанию имеют кодировку Utf-8. Если менять их стандартным блокнотом Windows, то к кодировке Utf-8 добавляется специальная BOM-последовательность. Необязательно знать, что это такое, но из-за неё некоторые функции движка работать вообще не будут. Поэтому так важно, чтобы все файлы шаблонов WP были сохранены в кодировке Utf-8 без BOM.

notepad++ menu

Преобразование в кодировку Utf-8 без BOM

Теперь, чтобы открыть текстовый файл данным редактором, надо кликнуть по нему правой кнопкой мышки и выбрать соответствующий пункт меню:

Save as notepad++

Таким образом, установив на свой компьютер программу Notepad++ можно получить многофункциональный редактор текста с подсветкой синтаксиса и возможностью манипуляций с кодировками.

Спасибо! Хорошая статья. Утвердился в том, чтобы преобразовывать всегда на «без BOM», раньше постоянно мучился: «Что же использовать?». Ещё раз, спасибо.

Огромное спасибо.
Со своим сайд баром замучался, еще не финиш, но когда читаешь и видишь … Спасибо.. Звонок другу не понадобился… =)

у меня часто не с кодировками а со шрифтами возникают проблемы.открываешь текстовый файл нотепадом скопированный и сохранённый из командной строки, а там крякозябры. потому что шрифт терминал, а у нотепада сегое уи и не как не сохранить этот файл в сегои уи, хотя изменять шрифт в нотепад можно и читать, но сохранить текст в другом шрифте нельзя =-O

а где скачать нормальный нотепад. чтобы без виросов всяких?

я, а чего вы с официального сайта не качаете? Там же без вирусов.

Источник

Adblock
detector» width=»100%» style=»BORDER-RIGHT: #719bd9 1px solid; BORDER-LEFT: #719bd9 1px solid; BORDER-BOTTOM: #719bd9 1px solid» cellpadding=»6″ cellspacing=»0″ border=»0″>

Кодировка текста – это схема нумерации символов, в которой каждому символу, цифре или знаку присвоено соответствующее число. Кодировку используют для сохранения и обработки текста на компьютере. Каждый раз при сохранении текста в файл он сохраняется с использованием определенной схемы кодирования, и при открытии этого файла необходимо использовать такую же схему, иначе восстановить исходный текст не получится. Самыми популярными кодировками для кириллицы сейчас являются UTF-8, Windows-1251 (CP1251, ANSI).

Для того чтобы программа смогла правильно открыть текстовый файл, иногда приходится вручную менять кодировку, перекодируя текст из одной схемы в другую. Например, не редко возникают проблемы с открытием файлов CSV, XML, SQL, TXT, PHP.

В этой небольшой статье мы расскажем о том, как изменить кодировку текстового файла на UTF-8, Windows-1251 или любую другую.

Блокнот Windows

Если вы используете операционную систему Windows 10 или Windows 11, то вы можете изменить кодировку текста с помощью стандартной программы Блокнот. Для этого нужно открыть текстовый файл с помощью Блокнота и воспользоваться меню «Файл – Сохранить как».

меню Файл – Сохранить как

В открывшемся окне нужно указать новое название для файла, выбрать подходящую кодировку и нажать на кнопку «Сохранить».

изменить кодировку в Блокноте

К сожалению, для подобных задач программа Блокнот часто не подходит. С ее помощью нельзя открывать документы большого размера, и она не поддерживает многие кодировки. Например, с помощью Блокнота нельзя открыть текстовые файлы в DOS 866.

Notepad++

Notepad++ (скачать) является одним из наиболее продвинутых текстовых редакторов. Он обладает подсветкой синтаксиса языков программирования, позволяет выполнять поиск и замену по регулярным выражениям, отслеживать изменения в файлах, записывать и воспроизводить макросы, считать хеш-сумы и многое другое. Одной из основных функций Notepad++ является поддержка большого количества кодировок текста и возможность изменения кодировки текстового файла в UTF-8 или Windows 1251.

Для того чтобы изменить кодировку текста с помощью Notepad++ файл нужно открыть в данной программе. Если программа не смогла правильно определить схему кодирования текста, то это можно сделать вручную. Для этого нужно открыть меню «Кодировки – Кириллица» и выбрать нужный вариант.

выбрать кодировку в Notepad++

После открытия текста можно изменить его кодировку. Для этого нужно открыть меню «Кодировки» и выбрать один из вариантов преобразования. Notepad++ позволяет изменить текущую кодировку текста на ANSI (Windows-1251), UTF-8, UTF-8 BOM, UTF-8 BE BOM, UTF-8 LE BOM.

изменить кодировку в Notepad++

После преобразования файл нужно сохранить с помощью меню «Файл – Сохранить» или комбинации клавиш Ctrl-S.

Akelpad

Akelpad (скачать) – достаточно старая программа для работы с текстовыми файлами, которая все еще актуальна и может быть полезной. Фактически Akelpad является более продвинутой версией стандартной программы Блокнот из Windows. С его помощью можно открывать текстовые файлы большого размера, которые не открываются в Блокноте, выполнять поиск и замену с использованием регулярных выражений и менять кодировку текста.

Для того чтобы изменить кодировку текста с помощью Akelpad файл нужно открыть в данной программе. Если после открытия файла текст не читается, то нужно воспользоваться меню «Файл – Открыть».

открыть файл в Akelpad

В открывшемся окне нужно выделить текстовый файл, снять отметку «Автовыбор» и выбрать подходящую кодировку из списка. При этом в нижней части окна можно видеть, как будет отображаться текст.

выбрать кодировку в Akelpad

Для того чтобы изменить текущую кодировку текста нужно воспользоваться меню «Файл – Сохранить как» и сохранить документ с указанием новой схемы кодирования.

изменить кодировку в Akelpad

В отличие от Notepad++, текстовый редактор Akelpad позволяет сохранить файл в практически любой кодировке. В частности, доступны Windows 1251, DOS 886, UTF-8 и многие другие.

Посмотрите также:

  • Чем открыть PDF файл в Windows 7 или Windows 10
  • Как перевернуть страницу в Word
  • Как копировать текст с помощью клавиатуры
  • Как сделать рамку в Word
  • Как сделать буклет в Word

Автор
Александр Степушин

Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.

Остались вопросы?

Задайте вопрос в комментариях под статьей или на странице
«Задать вопрос»
и вы обязательно получите ответ.

кстати, может есть какой-нибудь вариант вывода perl’ом в браузер текста в UTF-8 без использования модулей Unicode и Text::Iconv. например, с использованием модуля CGI.

и почему не помогает вывод заголовка?
print «Content-type: text/html; charset=utf-8

Источник

Как преобразовать utf 8 в windows 1251

Сообщения: 3665
Благодарности: 1562

» width=»100%» style=»BORDER-RIGHT: #719bd9 1px solid; BORDER-LEFT: #719bd9 1px solid; BORDER-BOTTOM: #719bd9 1px solid» cellpadding=»6″ cellspacing=»0″ border=»0″>

contributor

Сообщения: 27459
Благодарности: 8022

Сообщения: 3665
Благодарности: 1562

поясните плз, AFAIK utf16le (=Unicode) Native-кодировка начиная с Win2K

Источник

Заметки Лёвика

web программирование, администрирование и всякая всячина, которая может оказаться полезной

При помощи функции php iconv (строго говоря, это не совсем функция PHP, она использует стороннюю библиотеку (есть iconv.dll и php_iconv.dll или iconv.so), которой может не быть на хостинге) легко преобразовать кодировку (например, из windows-1251 в utf-8 и наоборот:

Если не работает iconv

Т.е. чтобы преобразовать текст из кодировки windows-1251 в UTF-8 следует выполнить:
mb_convert_encoding($s,»UTF-8″,»windows-1251″);

iconv array для массива

Метки: iconv

Опубликовано Пятница, Октябрь 21, 2011 в 15:02 в следующих категориях: Без рубрики. Вы можете подписаться на комментарии к этому сообщению через RSS 2.0. Вы можете оставить комментарий. Пинг отключен.

Автор будет признателен, если Вы поделитесь ссылкой на статью, которая Вам помогла:
BB-код (для вставки на форум)

html-код (для вставки в ЖЖ, WP, blogger и на страницы сайта)

ссылка (для отправки по почте)

Как быть с запросом select к базе mssql не понимает кирилицу
“select
[Название]
,[номер]
, [Removed]
from imdb.dbo. Оконечное оборудование “;

Следует привести столбцы (или всю базу данных сразу) к соответствующему сравнению (кодировке)
ALTER DATABASE COLLATE Cyrillic_General_CI_AS

Или использовать Nvarchar

declare @test TABLE
(
Col1 varchar(40),
Col2 varchar(40),
Col3 nvarchar(40),
Col4 nvarchar(40)
)
INSERT INTO @test VALUES
(‘иытание’,N’иытание’,’иытание’,N’иытание’)
SELECT * FROM @test

Если изменяю версию php 5.6 то не перекодируется. Не подскажете?

Источник

Как сменить кодировку файла? Notepad++ редактор с подсветкой синтаксиса, кодировка Utf-8 без BOM

money birds728

notepad++ download

Notepad++ — отличный текстовый редактор!

В статье о кодировках текста я описал основные моменты, показывающие, почему необходимо учитывать кодировку файла (например, при создании html-страницы). Здесь же я опишу простой способ выставления нужной кодировки текста с помощью простого и быстрого редактора Notepad++.

Чтобы скачать данную программу, заходим на официальный сайт — Notepad-plus-plus.org — далее ищем ссылку «download», кликаем по ней и выбираем «Notepad++ v*** Installer», где вместо звёздочек будет текущая версия редактора. Скачиваем и устанавливаем, никаких сложностей при установке нет.

Чем вообще хорош этот редактор?

notepad++ highlight

Notepad++ понимает php и подсвечивает синтаксис языка. Кликабельно

Последняя особенность очень важна, например, при редактировании шаблонов движка вашего сайта (напр., WordPress). Почему? Потому что все файлы WP по умолчанию имеют кодировку Utf-8. Если менять их стандартным блокнотом Windows, то к кодировке Utf-8 добавляется специальная BOM-последовательность. Необязательно знать, что это такое, но из-за неё некоторые функции движка работать вообще не будут. Поэтому так важно, чтобы все файлы шаблонов WP были сохранены в кодировке Utf-8 без BOM.

notepad++ menu

Преобразование в кодировку Utf-8 без BOM

Теперь, чтобы открыть текстовый файл данным редактором, надо кликнуть по нему правой кнопкой мышки и выбрать соответствующий пункт меню:

Save as notepad++

Таким образом, установив на свой компьютер программу Notepad++ можно получить многофункциональный редактор текста с подсветкой синтаксиса и возможностью манипуляций с кодировками.

Спасибо! Хорошая статья. Утвердился в том, чтобы преобразовывать всегда на «без BOM», раньше постоянно мучился: «Что же использовать?». Ещё раз, спасибо.

Огромное спасибо.
Со своим сайд баром замучался, еще не финиш, но когда читаешь и видишь … Спасибо.. Звонок другу не понадобился… =)

у меня часто не с кодировками а со шрифтами возникают проблемы.открываешь текстовый файл нотепадом скопированный и сохранённый из командной строки, а там крякозябры. потому что шрифт терминал, а у нотепада сегое уи и не как не сохранить этот файл в сегои уи, хотя изменять шрифт в нотепад можно и читать, но сохранить текст в другом шрифте нельзя =-O

а где скачать нормальный нотепад. чтобы без виросов всяких?

я, а чего вы с официального сайта не качаете? Там же без вирусов.

Источник

Adblock
detector» width=»100%» style=»BORDER-RIGHT: #719bd9 1px solid; BORDER-LEFT: #719bd9 1px solid; BORDER-BOTTOM: #719bd9 1px solid» cellpadding=»6″ cellspacing=»0″ border=»0″>

Опять в php, использование iconv дает сбои.

function cp1251_to_utf8 ($txt)  {
    $in_arr = array (
        chr(208), chr(192), chr(193), chr(194),
        chr(195), chr(196), chr(197), chr(168),
        chr(198), chr(199), chr(200), chr(201),
        chr(202), chr(203), chr(204), chr(205),
        chr(206), chr(207), chr(209), chr(210),
        chr(211), chr(212), chr(213), chr(214),
        chr(215), chr(216), chr(217), chr(218),
        chr(219), chr(220), chr(221), chr(222),
        chr(223), chr(224), chr(225), chr(226),
        chr(227), chr(228), chr(229), chr(184),
        chr(230), chr(231), chr(232), chr(233),
        chr(234), chr(235), chr(236), chr(237),
        chr(238), chr(239), chr(240), chr(241),
        chr(242), chr(243), chr(244), chr(245),
        chr(246), chr(247), chr(248), chr(249),
        chr(250), chr(251), chr(252), chr(253),
        chr(254), chr(255)
    );

    $out_arr = array (
        chr(208).chr(160), chr(208).chr(144), chr(208).chr(145),
        chr(208).chr(146), chr(208).chr(147), chr(208).chr(148),
        chr(208).chr(149), chr(208).chr(129), chr(208).chr(150),
        chr(208).chr(151), chr(208).chr(152), chr(208).chr(153),
        chr(208).chr(154), chr(208).chr(155), chr(208).chr(156),
        chr(208).chr(157), chr(208).chr(158), chr(208).chr(159),
        chr(208).chr(161), chr(208).chr(162), chr(208).chr(163),
        chr(208).chr(164), chr(208).chr(165), chr(208).chr(166),
        chr(208).chr(167), chr(208).chr(168), chr(208).chr(169),
        chr(208).chr(170), chr(208).chr(171), chr(208).chr(172),
        chr(208).chr(173), chr(208).chr(174), chr(208).chr(175),
        chr(208).chr(176), chr(208).chr(177), chr(208).chr(178),
        chr(208).chr(179), chr(208).chr(180), chr(208).chr(181),
        chr(209).chr(145), chr(208).chr(182), chr(208).chr(183),
        chr(208).chr(184), chr(208).chr(185), chr(208).chr(186),
        chr(208).chr(187), chr(208).chr(188), chr(208).chr(189),
        chr(208).chr(190), chr(208).chr(191), chr(209).chr(128),
        chr(209).chr(129), chr(209).chr(130), chr(209).chr(131),
        chr(209).chr(132), chr(209).chr(133), chr(209).chr(134),
        chr(209).chr(135), chr(209).chr(136), chr(209).chr(137),
        chr(209).chr(138), chr(209).chr(139), chr(209).chr(140),
        chr(209).chr(141), chr(209).chr(142), chr(209).chr(143)
    );

    $txt = str_replace($in_arr,$out_arr,$txt);
    return $txt;
}

Источник

Проблема кодировок часто возникает при написании парсеров, чтении данных из xml и CSV файлов. Ниже представлены способы эту проблему решить.

1

windows-1251 в UTF-8

$text = iconv('windows-1251//IGNORE', 'UTF-8//IGNORE', $text);
echo $text;

PHP

$text = mb_convert_encoding($text, 'UTF-8', 'windows-1251');
echo $text;

PHP

2

UTF-8 в windows-1251

$text = iconv('utf-8//IGNORE', 'windows-1251//IGNORE', $text);
echo $text;

PHP

$text = mb_convert_encoding($text, 'windows-1251', 'utf-8');
echo $text;

PHP

3

Когда ни что не помогает

$text = iconv('utf-8//IGNORE', 'cp1252//IGNORE', $text);
$text = iconv('cp1251//IGNORE', 'utf-8//IGNORE', $text);
echo $text;

PHP

Иногда доходит до бреда, но работает:

$text = iconv('utf-8//IGNORE', 'windows-1251//IGNORE', $text);
$text = iconv('windows-1251//IGNORE', 'utf-8//IGNORE', $text);
echo $text;

PHP

4

File_get_contents / CURL

Бывают случаи когда file_get_contents() или CURL возвращают иероглифы (Алмазные борÑ) – причина тут не в кодировке, а в отсутствии BOM-метки.

$text = file_get_contents('https://example.com');
$text = "xEFxBBxBF" .  $text;
echo $text;

PHP

Ещё бывают случаи, когда file_get_contents() возвращает текст в виде:

�mw�Ƒ0�����&IkAI��f��j4/{�</�&�h�� ��({�񌝷o�����:/��<g���g��(�=�9�Paɭ

Это сжатый текст в GZIP, т.к. функция не отправляет правильные заголовки. Решение проблемы через CURL:

function getcontents($url){
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	curl_setopt($ch, CURLOPT_ENCODING, 'gzip');
	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$output = curl_exec($ch);
	curl_close($ch);
	return $output;
}

echo getcontents('https://example.com');

PHP

12.01.2017, обновлено 02.11.2021

Другие публикации

Отправка письма с вложением

Отправка e-mail в кодировке UTF-8 с вложенными файлами и возможные проблемы.

Работа с JSON в PHP

JSON (JavaScript Object Notation) – текстовый формат обмена данными, основанный на JavaScript, который представляет собой набор пар {ключ: значение}. Значение может быть массивом, числом, строкой и…

Массив $_SERVER

Описание значений глобального массива $_SERVER с примерами.

Получить фото из Instagram без API

Так как Instagram и Fasebook ограничили доступ к API, а фото с открытого аккаунта всё же нужно периодически получать и…

Обзор PHP расширений для чтения файлов Excel

В статье представлены различные PHP-расширения для чтения файлов XLS, XLSX, описаны их плюсы и минусы, а также примеры…

Бот Телеграм на PHP

Примеры как зарегистрировать бота в Телеграм, описание и взаимодействие с основными методами API.

Программа позволяет перекодировать текстовые файлы из кодировки UTF-8 в кодировку Windows-1251, а также добавлять маркер UTF-8, если его нет. Автор статьи: romix | Редакторы:
Последняя редакция №3 от 03.07.07 | История
URL: http://kb.mista.ru/article.php?id=481

Ключевые слова: кодировка, utf-8, windows-1251, windows

http://x-romix.narod.ru/UTF8_1251.rar

(скачивать ЛЕВОЙ кнопкой мыши, 24К)

Пример вызова:

utf8_1251.exe test_utf8.xml test.xml

Программа изменяет объявление кодировки в первой строке XML.

Перекодирование из Windows-1251 в UTF-8

Перекодирует XML-файл из кодировки Windows-1251 в UTF8.

Если файл уже в кодировке UTF8, то он остается как есть.

Если файл не содержит маркера кодировки UTF8, то добавляет его.

Вызов win1251_utf8.exe Файл1.xml Файл2.xml

Добавление маркера в UTF-8

Используйте ту же самую программу win1251_utf8.exe для добавления маркера UTF-8.

Если кодировка уже была UTF-8, и был маркер, то файл не изменится.


smaharbA пишет:

9 — 28.02.07 — 21:52

//*******************************************
 
Процедура Сформировать()
    Стрим = СоздатьОбъект("Adodb.Stream");
    Стрим.Type = 2;
    Стрим.Mode= 3;
    Стрим.charset="utf-16";
    //Стрим.charset="windows-1251";
 
    Стрим.Open();
    Стрим.WriteText("Проверочка");
    Стрим.SaveToFile("c:unicode.txt",2);
    Стрим.Close();
    Стрим.charset="koi8-r";
    Стрим.Open();
    Стрим.WriteText("Проверочка");
    Стрим.Close();
    Стрим.charset="utf-8";
    Стрим.Open();
    Стрим.WriteText("Проверочка");
    Стрим.SaveToFile("c:utf-8.txt",2);
    Стрим.Close();
КонецПроцедуры
  • Печать

Страницы: [1] 2  Все   Вниз

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

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

Оффлайн
Givizub

Чем и как перекодировать текстовый файл из UTF-8 в Windows-1251?
В Gedit при попытке сохранения пишет:
Документ содержит один или более символов, которые не имеют представления в указанной кодировке символов. Выберите другую кодировку и попробуйте еще раз.
Или этот файл совсем нельзя сохранить в Windows-1251?


Оффлайн
Phlya

Если есть символы, которых в целевой кодировке в принципе нет, то ничего не сделаешь, кроме как заменить их.

Ubuntu 14.04 (Unity), MSI GE40


Оффлайн
Haron Prime

я пользуюсь sublime-text-2 — никогда не возникало проблем со сменой кодировки


Оффлайн
Givizub

Not all characters are representable in Cyrillic (Windows 1251), falling back to UTF-8

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


Оффлайн
Haron Prime

возможно, что я с такими просто не сталкивался, т.к. у меня подобное не происходило ни разу

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


adawdp

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


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

Не опускай рук, а то пропустишь в бороду


Оффлайн
Givizub

iconv?

іconv: illegal input sequence at position 92726
Весь текст в виде «������».


Оффлайн
victor00000

Drone93,

man iconv

L~$ 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~$


Оффлайн
Givizub

Делаю так же, пишет «iconv: illegal input sequence at position 92726«
Значит, что в windows-1251 нету такого символа.

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


Оффлайн
ArcFi

echo '123☃456' | iconv -f UTF-8 -t CP1251//IGNORE


Оффлайн
Samael

Ubuntu 8.04 @ Dell Inspiron 1501 -> Mint 14 @ Acer AspireOne 722


Оффлайн
Givizub

А тексто

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
Текстовый документ очень длинный (Электронная книга, там до сотни страниц!). В терминале полностью не отображается.


Оффлайн
victor00000

Drone93,
-f и -t обмен на -t и -f ?


Оффлайн
Givizub

А что говорит 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


  • Печать

Страницы: [1] 2  Все   Вверх

Понравилась статья? Поделить с друзьями:
  • Как крякнуть майнкрафт лицензионный windows 10
  • Как конвертировать ssd в gpt при установке windows
  • Как крякнуть windows 10 pro лицензионный
  • Как конвертировать py в exe на windows
  • Как конвертировать pdf в word windows 7