Как сохранить файл в utf 8
Перейти к содержимому

Как сохранить файл в utf 8

  • автор:

Как сохранить файл в кодировке UTF-8

utf-8

Решение 1.

  1. Открываеем file-01.html в текстовом редакторе Блокнот.
  2. Выбикаем «Сохранить как…».
  3. Выбираем кодировку UTF-8.
  4. Жмем кнопку — Сохранить.
  1. Открываем file-01.html в текстовом редакторе Notepad++
  2. Меню -> Кодировки.
    Здесь видим, что Notepad++ определяет сам известную кодировку открытого файла.

utf-8

  • Меню -> Файл -> Сохранить (не забывать).
  • Как браузер определяет кодировку?

    Мы сами сообщаем браузеру о том, какая кодировка установлена для данного HTML файла.
    Делается это посредством META-тега и атрибут charset

    1) charset="utf-8">
    2) charset="windows-1251">
    3) charset=koi8-r>

    Атрибут charset указывает браузеру в какой кодировке отображать страницу сайта.

    Важно!
    При перекодировке файлов не забывать изменять директивы в META-теге на актуальные.
    Если в META-теге указана одна кодировка, а файл сохранен в другой кодировке, то на экране мы увидем «абракадабру». Браузер в первую очередь открывает страницу в кодировке указанной в META-теге на странице.

    utf-8
    utf-8

    4) В случае
    Если в META-теге указана нужная кодировка, а сайт все равно отображает «абракадабру», то нужно проверить настройку сайта на хостинге (веб-сервере).
    Обычно на хостингне в настройках сайта указана кодировка utf-8.
    Если в настройках хостинга указана кодировка windows-1251, то нужно сменить настройку на utf-8.

    Как сохранить файл в utf-8 ?

    Запарился уже.:madd: Помню раньше выход находил, сейчас не могу вспомнить. Дело вот в чем. Файл генерится и сохранятся php скриптом. И он всегда в ansi сохраняется. Соответственно проблемы с кодировкой, т.к. контент в utf-8. Как можно сохранить файл именно в utf-8 или как обойти? (Сам скрипт в utf-8)

    • eTarget 2011:Панельная дискуссия «Стратегия и планирование рекламной кампании в интернете»
    • eTarget 2011: Круглый стол «Реклама в онлайн-видео»
    • Могут ли «плохие» входящие ссылки привести к ухудшению ранжирования?

    На сайте с 18.03.2007
    14 декабря 2008, 01:36

    iconv — преобразует строку из одной кодировки в другую

    или вот, наткнулся на програмку, если поможет.

    Продается СДЛ на тему инвестирования (http://www.telderi.ru/ru/viewsite/903457)
    14 декабря 2008, 02:22

    Если вам просто 1 раз файл сохранить — редактор Notepad++ позволяет сохранить или поменять кодировку на utf-8

    Если нужна библиотека пх для перекодировки — используйте iconv или mb_ .

    На сайте с 30.10.2007
    14 декабря 2008, 10:56

    как вручную сохраниить я знаю:), но файлов очень много

    прога тоже не пойдет, т.к. на сервере все происходит

    спасибо за ответы

    На сайте с 27.11.2005
    14 декабря 2008, 11:51

    в пхп скрипте установите UTF-8 локаль или используется iconv.

    Администрируем сервера, впс, вдс. Ускоряем загрузку сайтов — DLE, Word Press, Joomla, Modx. Настраиваем безопасность. Ручная чистка rootkit/malware/вирусов. (/ru/forum/867860) Разработка — shell/bash/sh/python/perl.

    На сайте с 12.10.2007
    14 декабря 2008, 16:30

    если вдруг iconv не работает на сервере то можно такую функцию применять

    ### функция конвертирования utf-8 ### 
    function convert_utf_string($str,$type)<
    // w - encodes from UTF to win ; u - encodes from win to UTF
    static $conv='';
    if(!is_array($conv))<
    $conv=array();
    for ($x=128;$x$conv['utf'][]=chr(209).chr($x);
    $conv['win'][]=chr($x+112);
    >
    for ($x=144; $x$conv['utf'][]=chr(208).chr($x);
    $conv['win'][]=chr($x+48);
    >
    $conv['utf'][]=chr(208).chr(129);
    $conv['win'][]=chr(168);
    $conv['utf'][]=chr(209).chr(145);
    $conv['win'][]=chr(184);
    >
    if ($type=='w')<
    return str_replace($conv['utf'],$conv['win'],$str );
    > elseif ($type=='u')<
    return str_replace ($conv['win'],$conv['utf'],$str);
    > else <
    return $str;
    >
    >
    ###

    Как записать текст на русском в файл UTF-8?

    1. Почему файлы ‘str_ru_text_1.txt’, ‘str_ru_text_2.txt’ в кодировке Windows 1251, а файлы ‘str_en_text_1.txt’, ‘str_en_text_2.txt’ — в UTF-8?

    2. Есть ли способ записать utf-8 без str.encode(‘utf-8’)?

    3. Где описаны правила записи строк в файл? Где и что почитать по этой проблеме?

    Python 3.4, Windows 8.1

    with open('str_ru_text_1.txt', 'rb') as f: print(f.read().decode('utf-8')) with open('str_en_text_1.txt', 'rb') as f: print(f.read().decode('utf-8'))
    • Вопрос задан более трёх лет назад
    • 45284 просмотра

    2 комментария

    Оценить 2 комментария

    lololololo @lololololo

    >а файлы ‘str_en_text_1.txt’, ‘str_en_text_2.txt’ — в UTF-8?
    Как ты определил по файлу с ascii символами в какой они кодировке?

    Станислав Карпов @stkrp Автор вопроса

    lololololo: см. ветку комментариев к первому комментарию (началось с прикладного софта, закончилось подбором кодировки через decode): https://toster.ru/answer?answer_id=344879#comments_list

    Решения вопроса 2
    lololololo @lololololo

    Товарищи, это писец какой-то. Хотели как лучше, а получилось еще более через жопу.

    mode is an optional string that specifies the mode in which the file is opened. <. >In text mode, if encoding is not specified the encoding used is platform dependent: locale.getpreferredencoding(False) is called to get the current locale encoding. (For reading and writing raw bytes use binary mode and leave encoding unspecified.)

    1. Если не указан режим ‘b’, то по умолчанию файл считается текстовым. В двоичный файл можно писать только байты, в текстовый — только юникод.
    (В текстовом режиме файл читается только до EOF (‘\x1a’). Как совместить чтение до конца файла и запись юникода в файл? А никак.)
    2. Если кодировка не указана, по умолчанию берется locale.getpreferredencoding(False), т.е. результат выполнения будет зависеть от настроек оси! (для винды — от текущей локали). Нахера. От одних граблей избавились, другие приобрели.

    В общем, всегда явно указывай явно кодировку файла.

    with open('str_ru_text_1.txt', 'w', encoding='utf-8') as f:

    Ответ написан более трёх лет назад
    Нравится 4 6 комментариев
    Станислав Карпов @stkrp Автор вопроса

    Из вопроса:
    >> Python 3.4, Windows 8.1
    С codecs не встречался, а с двойкой не работаю. Чем codecs.open от open отличается (в Python 3)?

    lololololo @lololololo
    codecs — для двойки.
    lololololo @lololololo
    Вопрос-то старый, он тебя вообще еще интересует?
    Станислав Карпов @stkrp Автор вопроса

    Если только для двойки, то не стоит тратить время на объяснение, спасибо. А с параметром encoding еще тогда разобрались, но без источников. Спасибо за ссылку.

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

    В моих скриптах на C# присутствуют русские комментарии, при отправке коммита на гитхаб они становятся нечитабельными. Мне кажется, дело в другой кодировке. Также в Unity 3D в инспекторе в предпросмотре кода, русские комментарии нечитабельны. Код пишу в MS Visual Studio.

    // ïîëó÷àåì ñïèñîê èãðîêîâ ñ èìåíåì êîòîðûé íàñ ïðîäîìàæèë è óáèë íî íå ìû var ListLastDamager = PhotonNetwork.PlayerList.ToList().Find(x => x.NickName == Killer && x.NickName != photonView.Owner.NickName);
    • Вопрос задан более года назад
    • 2383 просмотра

    7 комментариев

    Простой 7 комментариев

    Compolomus

    Дмитрий @Compolomus
    Ваши файлы не в utf кодировке, потому ваши виндовые коменты так выглядят

    xXx_Unity_xXx

    xXx_Unity_xXx @xXx_Unity_xXx Автор вопроса
    Дмитрий, поэтому я спрашиваю как сделать utf кодировку

    Compolomus

    Дмитрий @Compolomus

    Открываете файл в нормальном редакторе, ctrl +a , ctrl + c. Сохранить в кодировке utf, увидите подобные коментарии как в примере, в следствии перекодировки. ctrl + v, сохранить. Проделать на всех файлах

    xXx_Unity_xXx

    xXx_Unity_xXx @xXx_Unity_xXx Автор вопроса
    Дмитрий, нормальном редакторе? Во всех файлах? У меня проект Unity, там 30 скриптов к примеру..

    Compolomus

    Дмитрий @Compolomus

    xXx_Unity_xXx, ну возможно это можно сделать прям через ide
    Просто на всякий копируйте содержимое. Ну и коменты на русском такое себе

    Compolomus

    Дмитрий @Compolomus

    https://git-scm.com/docs/gitattributes/2.19.2
    Создайте файлик в корне репа, .gitattributes полезно будет прописать так же и переносы строк, а то получится так, что файлы в репе в одну строку

    sergey-kuznetsov

    Сергей Кузнецов @sergey-kuznetsov Куратор тега GitHub

    Вы каким-то образом смогли создать файлы в однобитной кодировке Windows-1251.
    Гитхаб и другие программы отображают такие файлы как если бы они были созданы в однобитной же кодировке Latin-1 (ISO 8859-1). Сам VS покажет знаки вопроса вместо букв. Вам надо поправить исходники если хочется видеть комментарии везде.

    Вот скрипт PowerShell для пакетного перекодирования всех csx-файлов в папке проекта

    $fld = 'c:\project' $flt = '*.csx' # Доступные кодировки: [text.encoding]::getencodings() $encin = [text.encoding]::getencoding("windows-1251") $encout = [text.encoding]::getencoding("utf-8") filter recode-file < $content = [io.file]::readalltext($_.fullname, $encin) [io.file]::writealltext($_.fullname, $content, $encout) >dir $fld -filt $flt -file -rec|recode-file

    Сохраните его например в файл с именем decode.ps1 и запустите из PS
    Скрипт работает. Проверил на тестовом проекте.

    После изменения файлов гитхаб покажет русские буквы.

    Решения вопроса 1

    xXx_Unity_xXx

    xXx_Unity_xXx @xXx_Unity_xXx Автор вопроса
    Делаю игры на юнити

    62dbed531397b494791268.jpeg

    Сам справился. Я не сохранил, но вам советую комментарии сохранить куда-нибудь, далее я изменил язык системы на компьютере на UTF — 8. После чего все скрипты будут в этой кодировке, но русские комменты которые там были превратились в вопросы.

    Ответ написан более года назад

    sergey-kuznetsov

    Сергей Кузнецов @sergey-kuznetsov Куратор тега GitHub

    Это же не решение!?
    И что значит сохранить куда-нибудь? Гит всё хранит по определению. Если что-то пошло не так, откатывается любой файл.

    xXx_Unity_xXx

    xXx_Unity_xXx @xXx_Unity_xXx Автор вопроса

    Сергей Кузнецов, ха-ха-ха, как бы не так, я же сразу сказал, что в гитхабе русские коменты не читабельны были.

    sergey-kuznetsov

    Сергей Кузнецов @sergey-kuznetsov Куратор тега GitHub

    xXx_Unity_xXx, так это сразу и поняли, ха-ха.
    И дали вам несколько способов как сделать их читабельными.

    Если изменить кодировку файлов, то гитхаб покажет русский текст.

    // ïîëó÷àåì ñïèñîê èãðîêîâ ñ èìåíåì êîòîðûé íàñ ïðîäîìàæèë è óáèë íî íå ìû
    // получаем список игроков с именем который нас продомажил и убил но не мы

    Ответы на вопрос 2

    freeExec

    Участник OpenStreetMap

    В студии выбрать «Сохранить как», а в окне где кнопка сохранить, есть выпадающий список, там выбрать кодировку UTF-8.

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

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