Как перевести в utf 8

Как перевести в utf 8High Star

Как перевести файлы в кодировку UTF-8

Как перевести в utf 8

Те, у кого старые сайты, могут столкнуться с такой проблемой, что необходимо перевести файлы в кодировку UTF-8. К их числу я смело могу назвать и себя. Начала делать сайты более 10 лет назад, когда об этой кодировке было мало что известно. На всех страницах у меня стояла кодировка:

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

Скажу честно, все же решила я все перелопатить вручную и вот как это у меня происходило:

И вот два дня я так долбила один свой сайт.

Можно, конечно же и не менять ничего. Но ведь старые сайты мои давно устарели, нужно переводить их и на современную верстку HTML5 и CSS3, плюс мобильную и адаптивную верстку. И лучше это делать в более продвинутых программах, а не в Notepad++.

Короче, приуныла я. Однако приехал сын-программист и все решил!

Единственно, заранее создайте новую папку, куда программа закачает все Ваши файлы из нужной папки.

Как перевести в utf 8

Не забудьте также поставить галочку «Copy Unconverted». Нажимаете кнопочку «Start» и программа заработала!

Как перевести в utf 8

Всего пара минут и все файлы волшебным образом перекодировались в нужную кодировочку!

Папку с прежними файлами можете просто удалить, чтобы не занимала место и работать дальше! Вперед, к новым высотам!

Что такое вообще UTF-8

Заметьте, что UTF-8 надо обязательно писать в верхнем регистре и через черточку, то есть никаких там utf-8, utf8 или UTF8. Пишите правильно!

UTF-8 (от англ. Unicode Transformation Format, 8-bit — «формат преобразования Юникода, 8-битный») — одна из общепринятых и стандартизированных кодировок текста, которая позволяет хранить символы Юникода, используя переменное количество байт (от 1 до 6).

Стандарт UTF-8 официально закреплён в документах RFC 3629 и ISO/IEC 10646 Annex D. Кодировка нашла широкое применение в UNIX-подобных операционных системах и веб-пространстве. Сам же формат UTF-8 был изобретён 2 сентября 1992 года Кеном Томпсоном и Робом Пайком и реализован в Plan 9. В качестве BOM использует последовательность байт EF16, BB16, BF16 (что у неё самой является трёхбайтовой реализацией символа FEFF16).

Одним из преимуществ является совместимость с ASCII — любые их 7-битные символы отображаются как есть, а остальные выдают пользователю мусор (шум). Поэтому в случае, если латинские буквы и простейшие знаки препинания (включая пробел) занимают существенный объём текста, UTF-8 даёт выигрыш по объёму по сравнению с UTF-16.

Источник

Переводим сайт на UTF-8

«Лучше день потерять, потом за час долететь» © Крылья, ноги, хвост

Прежде чем приступить к самому скрипту, хотелось бы описать мои подходы к данной проблеме и особенности решения. Естественно я использовал любимый командный интерпретатор bash в среде Linux.

Настраиваемые параметры скрипта следующие:

А вот собственно и сам скрипт:

А теперь, еще несколько полезных моментов.

1. Возможно даже после перекодировки в UTF-8 и замены meta content на charset=UTF-8 Вы все равно видите абракадабру или не то, что хотелось бы. Здесь все дело в том, что для нового сайта в UTF-8 необходимо заменить параметр default_charset для самого PHP, т.к. в глобальных переменных он явно установлен для другой кодовой страницы (windows-1251). Я делаю это в настройках виртуального хоста (httpd.conf) через:

2. Как правило, сейчас любой сайт хочет базы данных, которые Вам то-же надо будет перевести в UTF-8. Особого труда это не составляет, если под рукой есть phpMyAdmin или mysqldump, на крайний случай, для гиганских БД, наверняка придется писать скрипт конвертации и временно приостанавливать сервис. Простота идеи должна быть понятна: делаем дамп БД, перекодируем его с помощью того-же iconv и заменяем все, что связано с кодовыми страницами на желаемые данные, заливаем все в новую БД.

Еще более правильный вариант предложенный 4m@t!c сделать это на тестируемой БД с помощью ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;

С БД так-же может вылезти небольшая абракадабра, проявляющаяся в некорректном отображении русских ‘ш’ ‘И’. Здесь также сыграет с нами шутку дефолтная кодовая страница для MySQL. Для устранения этой проблемы, после подключения к БД, Вам придется добавить в код Вашего сайта следующие строки:

Либо поменять default-character-set и default-collation для MySQL, если такое позволительно.

Помните. Подходите к таким переводам серьезно, сперва выполняя их на параллельной версии сайта и тестируйте, тестируйте, тестируйте.

Добавлено:
Умные люди на Хабре и среди моих читателей дали очень дельные советы, за что им огромное спасибо. В связи с этим статья намного улучшилась.

Источник

Шпаргалка по переходу на UTF-8

1. База MySQL в часности

CREATE DATABASE db_name
CHARACTER SET utf8
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci
DEFAULT COLLATE utf8_general_ci
;

ALTER DATABASE db_name
CHARACTER SET utf8
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci
DEFAULT COLLATE utf8_general_ci
;

ALTER TABLE tbl_name
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci
;

2. Инсталляция mbstring

Windows
Линукс (Дебиан в часности):# aptitude install php-mbstring

3. Конфигурация mbstring

mbstring.language = Neutral ; Set default language to Neutral(UTF-8) (default)
mbstring.internal_encoding = UTF-8 ; Set default internal encoding to UTF-8
mbstring.encoding_translation = On ; HTTP input encoding translation is enabled
mbstring.http_input = auto ; Set HTTP input character set dectection to auto
mbstring.http_output = UTF-8 ; Set HTTP output encoding to UTF-8
mbstring.detect_order = auto ; Set default character encoding detection order to auto
mbstring.substitute_character = none ; Do not print invalid characters
default_charset = UTF-8 ; Default character set for auto content type header

4. Дело с небезопасными мультибайтовыми функциями в PHP

Наведу список функций, которыми нада пользоватся для правильной роботы вашего сценария:

mail()mb_send_mail()
strlen()mb_strlen()
strpos()mb_strpos()
strrpos()mb_strrpos()
substr()mb_substr()
strtolower()mb_strtolower()
strtoupper()mb_strtoupper()
substr_count()mb_substr_count()
ereg()mb_ereg()
eregi()mb_eregi()
ereg_replace()mb_ereg_replace()
eregi_replace()mb_eregi_replace()
split()mb_split()

5. htmlentities() для мультибайтных строк

6. Проверка content-type хэдэров

Все просто. Меняем любой на:
header(‘Content-Type: text/html; charset=UTF-8’);

7. Проверить бинарные файлы и строки

Вам прийдется пересмостеть все-все-все и ничего не забыть =)

Источник

Сменить кодировку файла на UTF-8 в Excel

Если при импорте контактов вы видите нечитаемые символы, как на скриншоте, это значит, что кодировка файла не подходит для импорта в Unisender. Файл нужно перекодировать в UTF-8. Далее мы расскажем, как это сделать в Excel.

Как перевести в utf 8

Переходим на вкладку «Данные», выбираем «Получение внешних данных», а далее — «Из текста».

Как перевести в utf 8

Открывается мастер импорта текста.
С текущей кодировкой содержимое файла нечитабельное.

Как перевести в utf 8

В поле «Формат файла» перебираем кодировки, пока не найдём ту, в которой текст отображается правильно. Вариантов много, поэтому можно начать с форматов, которые начинаются со слова «Кириллица». Находим нужный формат, нажимаем «Далее».

Как перевести в utf 8

Выбираем символы-разделители. В нашем случае это запятая.

Нажимаем «Далее» → «Готово» → «OK».

Как перевести в utf 8

Так выглядит импортированный текст в Excel.

Как перевести в utf 8

Теперь нажимаем «Файл» → «Сохранить как».

Вводим название файла, тип файла выбираем CSV, ниже нажимаем «Сервис» → «Параметры веб-документа».

Как перевести в utf 8

Переходим на вкладку «Кодировка», выбираем «Юникод UTF-8» и нажимаем «OK».

Как перевести в utf 8

Теперь импортируем его и видим, что текст отображается корректно.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *