Два способа, как поменять кодировку в word

Случаи некорректного отображения текста

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

Эти случаи чаще всего связаны лишь с одним — с неверной кодировкой текста. Точнее, конечно, будет сказать, что кодировка не неверная, а просто другая. Не воспринимающаяся программой. Интересно еще то, что общего стандарта для кодировки нет. То есть, она может разниться в зависимости от региона. Так, создав файл, например, в Азии, скорее всего, открыв его в России, вы не сможете его прочитать.

В этой статье речь пойдет непосредственно о том, как поменять кодировку в Word. Кстати, это пригодится не только лишь для исправления вышеописанных «неисправностей», но и, наоборот, для намеренного неправильного кодирования документа.

Выбор и изменение кодировки в Microsoft Word

MS Word заслужено является самым популярным текстовым редактором. Следовательно, чаще всего можно столкнуться с документами в формате именно этой программы. Все, что может в них отличаться, это лишь версия Ворда и формат файла (DOC или DOCX). Однако, не смотря на общность, с открытием некоторых документов могут возникнуть проблемы.

Урок: Почему не открывается документ Word

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

Урок: Как убрать режим ограниченной функциональности в Ворде

Если и вы столкнулись с аналогичной проблемой, вероятнее всего, виною тому неправильная кодировка файла, точнее, его текстового содержимого. В этой статье мы расскажем о том, как изменить кодировку текста в Word, тем самым сделав его пригодным для чтения. К слову, изменение кодировки может понадобиться еще и для того, чтобы сделать документ нечитабельным или, так сказать, чтобы “конвертировать” кодировку для дальнейшего использования текстового содержимого документа Ворд в других программах.

Что такое кодировка

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

Кодировка — схема нумерации, в которой каждому текстовому символу из набора соответствует числовое значение. Сама же кодировка может содержать буквы, цифры, а также другие знаки и символы. Отдельно стоит сказать о том, что в разных языках довольно часто используются различные наборы символов, именно поэтому многие кодировки предназначены исключительно для отображения символов конкретных языков.

Выбор кодировки при открытии файла

Если текстовое содержимое файла отображается некорректно, например, с квадратами, вопросительными знаками и другими символами, значит, MS Word не удалось определить его кодировку. Для устранения этой проблемы необходимо указать правильную (подходящую) кодировку для декодирования (отображения) текста.

1. Откройте меню “Файл” (кнопка “MS Office” ранее).

2. Откройте раздел “Параметры” и выберите в нем пункт “Дополнительно”.

3. Прокрутите содержимое окна вниз, пока не найдете раздел “Общие”. Установите галочку напротив пункта “Подтверждать преобразование формата файла при открытии”. Нажмите “ОК” для закрытия окна.

4. Закройте файл, а затем снова откройте его.

5. В разделе “Преобразование файла” выберите пункт “Кодированный текст”.

6. В открывшемся диалоговом окне “Преобразование файла” установите маркер напротив параметра “Другая”. Выберите необходимую кодировку из списка.

  1. Совет:В окне “Образец”вы можете увидеть, как будет выглядеть текст в той или иной кодировке.

7. Выбрав подходящую кодировку, примените ее. Теперь текстовое содержимое документа будет корректно отображаться.

В случае, если весь текст, кодировку для которого вы выбираете, выглядит практически одинаков (например, в виде квадратов, точек, знаков вопроса), вероятнее всего, на вашем компьютере не установлен шрифт, используемый в документе, который вы пытаетесь открыть. О том, как установить сторонний шрифт в MS Word, вы можете прочесть в нашей статье.

Урок: Как в Ворде установить шрифт

Что делать, чтобы сменить кодировку в Блокноте по умолчанию с ANSI на другую:

  1. Открываем Блокнот или создаём новый текстовый документ и потом его открываем в Блокноте
  2. Меняем кодировку текстового файла
  3. Сохраняем этот документ (я свой назвал по названию кодировки )

    1. Если не видно расширение файла, то можно его сделать видимым
    2. Можно сохранить файл и переименовать
  4. Перемещаем созданный документ в папку (сразу создать текстовый документ в этой папке не получится — защита Windows от внесения изменений в системные папки)

    1. Если папки нет (что мало вероятно), то её нужно создать и также переместить на место: 
  5. Теперь открываем редактор реестра
  6. Находим папку  / / / (она должна быть, если нет, то создаём)
  7. Создаём строковый параметр:

    1. С именем
    2. Со значением (имя того файла, который мы создали в п.3 перенесли в папку в п.4)
  8. Радуемся! Ибо это всё =)

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

Всё работает! =)

Изменение при открытии

Теперь поговорим о том, как изменить кодировку в Word. Способ, который сейчас будет представлен, подразумевает проведение этого действия при открытии документа.

Итак, чтобы произвести все настройки, необходимо:

  1. Открыть документ. Также можно открыть саму программу без него, это допустимо.

  2. Нажать на кнопку «Файл».

  3. Перейти в меню «Параметры». Данный пункт располагается в нижней части панели слева.

  4. Перейти в раздел «Дополнительно».

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

  6. Кликнуть «ОК».

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

В Word 2010 изменить кодировку можно точно так же, просто вместо меню «Файл» надо нажимать кнопку MS Office.

  1. При открытии увидите окошко «Преобразование файла», необходимо в нем перейти в меню «Кодированный текст».

  2. В верхней части окна поставьте пометку на пункте «Другая», чтобы список справа стал активен.

  3. В списке надо выбрать кодировку файла. К слову, если вы не знаете, какая именно кодировка документа, то можно поочередно кликать каждую, просматривая результат в окошке «Образец». И когда текст станет читабелен, нажать «ОК».

Это был первый способ, как изменить кодировку текста в Word. А сейчас незамедлительно переходим ко второму.

Как поменять кодировку строки в Golang?

1. Создайте файл с содержимым . Кодировкой файла должна быть windows-1250. Если вы не знаете, как это сделать, перейдите к шагу 4 и после выполнения шага 5, где создается файл в кодировке windows-1250, вы можете переименовать файл , а затем вернуться к шагу 2;
2. Создайте файл со следующим содержимым:

decode.go

Go

package main

import (
«fmt»
«io/ioutil»
«os»
«strings»

«golang.org/x/text/encoding/charmap»
)

func main() {

// Открывает файл windows-1250.
f, err := os.Open(«win1250.txt»)
if err != nil {
panic(err)
}
defer f.Close()

// Читает все в необработанной форме.
b, err := ioutil.ReadAll(f)
if err != nil {
panic(err)
}
content := string(b)

fmt.Println(«Without decode: » + content)

// Декодировать в unicode
decoder := charmap.Windows1250.NewDecoder()
reader := decoder.Reader(strings.NewReader(content))
b, err = ioutil.ReadAll(reader)
if err != nil {
panic(err)
}
fmt.Println(«Decoded: » + string(b))

}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

packagemain

import(

«fmt»

«io/ioutil»

«os»

«strings»

«golang.org/x/text/encoding/charmap»

)
 

funcmain(){

// Открывает файл windows-1250.

f,err=os.Open(«win1250.txt»)

iferr!=nil{

panic(err)

}

deferf.Close()

// Читает все в необработанной форме.

b,err=ioutil.ReadAll(f)

iferr!=nil{

panic(err)

}

content=string(b)

fmt.Println(«Without decode: «+content)

// Декодировать в unicode

decoder=charmap.Windows1250.NewDecoder()

reader=decoder.Reader(strings.NewReader(content))

b,err=ioutil.ReadAll(reader)

iferr!=nil{

panic(err)

}

fmt.Println(«Decoded: «+string(b))

 
}

3. Запустите код через ;
4. Посмотрите на вывод в терминале:

5. Создайте файл со следующим содержимым:

encode.go

Go

package main

import (
«io»
«os»

«golang.org/x/text/encoding/charmap»
)

func main() {

f, err := os.OpenFile(«out.txt», os.O_CREATE|os.O_RDWR, os.ModePerm|os.ModeAppend)
if err != nil {
panic(err)
}
defer f.Close()

// Декодирует в unicode
encoder := charmap.Windows1250.NewEncoder()
writer := encoder.Writer(f)
io.WriteString(writer, «Gdańsk»)

}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

packagemain

import(

«io»

«os»

«golang.org/x/text/encoding/charmap»

)
 

funcmain(){

f,err=os.OpenFile(«out.txt»,os.O_CREATE|os.O_RDWR,os.ModePerm|os.ModeAppend)

iferr!=nil{

panic(err)

}

deferf.Close()

// Декодирует в unicode

encoder=charmap.Windows1250.NewEncoder()

writer=encoder.Writer(f)

io.WriteString(writer,»Gdańsk»)

 
}

6. Запустите код через ;
7. Посмотрите на вывод в файле с кодировкой Windows-1250 и UTF-8.

Исправляем отображение русских букв в Windows 10

Существует два способа решения рассматриваемой проблемы. Связаны они с редактированием настроек системы или определенных файлов. Они отличаются по сложности и эффективности, поэтому мы начнем с легкого. Если первый вариант не принесет никакого результата, переходите ко второму и внимательно следуйте описанным там инструкциям.

Способ 1: Изменение языка системы

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

  1. Откройте меню «Пуск» и в строке поиска напечатайте «Панель управления». Кликните на отобразившийся результат, чтобы перейти к этому приложению.

Среди присутствующих элементов отыщите «Региональные стандарты» и нажмите левой кнопкой мыши на этот значок.

Появится новое меню с несколькими вкладками. В данном случае вас интересует «Дополнительно», где нужно кликнуть на кнопку «Изменить язык системы…».

Корректировки вступят в силу только после перезагрузки ПК, о чем вы и будете уведомлены при выходе из меню настроек.

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

Способ 2: Редактирование кодовой страницы

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

  1. Нажатием на комбинацию клавиш Win + R запустите приложение «Выполнить», в строке напечатайте regedit и кликните на «ОК».
  2. В окне редактирования реестра находится множество директорий и параметров. Все они структурированы, а необходимая вам папка расположена по следующему пути:

Выберите «CodePage» и опуститесь в самый низ, чтобы отыскать там имя «ACP». В столбце «Значение» вы увидите четыре цифры, в случае когда там выставлено не 1251, дважды кликните ЛКМ на строке.

Двойное нажатие левой кнопкой мыши открывает окно изменения строковой настройки, где и требуется выставить значение 1251 .

Если же значение и так уже является 1251, следует провести немного другие действия:

  1. В этой же папке «CodePage»поднимитесь вверх по списку и отыщите строковый параметр с названием «1252»Справа вы увидите, что его значение имеет вид с_1252.nls. Его нужно исправить, поставив вместо последней двойки единицу. Дважды кликните на строке.

Откроется окно редактирования, в котором и выполните требуемую манипуляцию.

После завершения работы с редактором реестра обязательно перезагрузите ПК, чтобы все корректировки вступили в силу.

Подмена кодовой страницы

Некоторые пользователи не хотят править реестр по определенным причинам либо же считают эту задачу слишком сложной. Альтернативным вариантом изменения кодовой страницы является ее ручная подмена. Производится она буквально в несколько действий:

  1. Откройте «Этот компьютер»и перейдите по пути C:WindowsSystem32 , отыщите в папке файл С_1252.NLS, кликните на нем правой кнопкой мыши и выберите «Свойства».

Переместитесь во вкладку «Безопасность» и найдите кнопку «Дополнительно».

Вам нужно установить имя владельца, для этого кликните на соответствующую ссылку вверху.

В пустом поле впишите имя активного пользователя, обладающего правами администратора, после чего нажмите на «ОК».

Вы снова попадете во вкладку «Безопасность», где требуется откорректировать параметры доступа администраторов.

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

Вернитесь в открытую ранее директорию и переименуйте отредактированный файл, поменяв его расширение с NLS, например, на TXT. Далее с зажатым CTRL потяните элемент «C_1251.NLS» вверх для создания его копии.

Нажмите на созданной копии правой кнопкой мыши и переименуйте объект в C_1252.NLS.

Вот таким нехитрым образом происходит подмена кодовых страниц. Осталось только перезапустить ПК и убедиться в том, что метод оказался эффективным.

Как видите, исправлению ошибки с отображением русского текста в операционной системе Windows 10 способствуют два достаточно легких метода. Выше вы были ознакомлены с каждым. Надеемся, предоставленное нами руководство помогло справиться с этой неполадкой.

Инструкция по изменению кодировки в стандартном блокноте

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

После написания текста или открытия готового документа в меню «файл» нажимаем «сохранить как».

После этого на экране появляется окно, в котором можно выбрать подходящий вариант из представленного списка.

Выбираем подходящий вариант, место сохранения документа и подтверждаем операцию. Вот и всё. Было просто? На самом деле для выполнения нужных работ могут потребоваться лишь считанные секунды.

11 ответов

161

Лучший ответ

В httpd.conf добавить (или изменить, если он уже существует):

27 май 2009, в 04:21
Поделиться

46

Добавьте это в свой :

Или, если у вас есть права администратора, вы можете установить его глобально, отредактировав и добавив:

(Вы можете использовать в тоже, но он не будет влиять на списки каталогов, созданные Apache таким образом.)

07 июнь 2012, в 07:34
Поделиться

24

27 май 2009, в 04:38
Поделиться

19

В.htaccess добавьте эту строку:

Это для тех, у кого нет доступа к файлу conf. Это еще одна попытка попробовать, когда другие попытки не удались.

Что касается проблем производительности, связанных с использованием.htaccess, я этого не видел. Мое типичное время загрузки страницы — 150-200 мс с или без.htaccess

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

12 авг. 2014, в 05:00
Поделиться

19

Поместите в . На самом деле, это уже есть. Вам просто нужно раскомментировать его, удалив предыдущий .

06 март 2013, в 18:30
Поделиться

8

Я не уверен, есть ли у вас доступ к конфигурации Apache (httpd.conf), но вы должны иметь возможность устанавливать директиву AddDefaultCharset. См:

Найдите модуль mod_mime.c и убедитесь, что установлено следующее:

или эквивалентные документы Apache 1.x().

Однако это работает только тогда, когда «content content-type — text/plain или text/html».

Вы также должны убедиться, что на ваших страницах установлена ​​кодировка. См. Дополнительную информацию:

27 май 2009, в 04:34
Поделиться

6

Для полноты, на Apache2 на Ubuntu, вы найдете кодировку по умолчанию в charset.conf в conf-доступной.

Раскомментируйте строку

26 авг. 2014, в 01:21
Поделиться

6

Это не проверено, но, вероятно, будет работать.

В вашем файле .htaccess поставьте:

Однако для этого потребуются mod_headers на сервере.

27 май 2009, в 05:24
Поделиться

2

Просто подсказка, если у вас есть длинные имена файлов в utf-8: по умолчанию они будут сокращены до 20 байт, так что может случиться так, что последний символ может быть «разрезан пополам» и, следовательно, непризнан должным образом. Затем вы можете установить следующее:

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

Как уже упоминались другие пользователи, это должно быть добавлено либо в , либо (если у вас есть права администратора) или в (если вы этого не сделаете).

03 май 2016, в 22:26
Поделиться

2

Где все HTML файлы находятся в UTF-8 и не имеют метатег для типа содержимого, я смог установить только необходимый по умолчанию для этих файлов, отправляемый Apache 2.4, добавив обе директивы:

11 дек. 2014, в 08:20
Поделиться

1

Просто оставьте пустым:

p.s. — В WHM go ———) Главная «Конфигурация сервиса» Редактор конфигурации PHP —-) нажмите «Расширенный режим» —-) найдите «default_charset» и оставьте поле пустым —- просто ничего, а не utf8, а не ISO

04 нояб. 2016, в 10:52
Поделиться

Ещё вопросы

  • 32Это код .htaccess в WordPress. Может кто-нибудь объяснить, как это работает?
  • 18Apache mod_php ИЛИ FastCGI? Что хорошо для WordPress?
  • 17Другая папка как подпапка сайта
  • 17Общий вопрос о разрешениях для файлов Linux: Apache и WordPress
  • 120Как настроить права доступа к файлам для Laravel 5 (и других)
  • 63Apache 2.4.6 на сервере Ubuntu: клиент отклонен из-за конфигурации сервера (PHP FPM)
  • 66Мой httpd.conf пуст
  • 49Получение внутренней 500-й ошибки сервера в Laravel 5+ Ubuntu 14.04
  • 511Параметры сервера Ruby on Rails
  • 138Как предотвратить кеширование страниц браузера в Rails

Инструкция для Word

Если у вас нет программы Word, то скачайте ее с официального сайта разработчиков и установите на свой компьютер. Если вы не собираетесь постоянно использовать эту программу, то платить за нее не нужно, вам хватит пробной версии.
Нажмите на нужный файл правой клавишей мышки и откройте подменю «Открыть с помощью», укажите программу Word. Если данной программы нет в списке, то запустите Word обычным способом. Откройте меню «Файл» и выберите команду «Открыть», укажите расположение нужного документа на жестком диске и нажмите «Открыть». Будет предложено несколько вариантов открытия файла, связанных с его нестандартной кодировкой, укажите нужный и нажмите команду ОК.

Подбор кодировки

Далее нужно изменить кодировку и сохранить результат, для этого откройте меню «Файл» и нажмите пункт «Сохранить как». Укажите директорию для измененного документа, впишите новое имя и выполните команду «Сохранить». Загрузится окно атрибутов документа, выберите нужную кодировку и нажмите Enter (наиболее используемой кодировкой является «Юникод»).
Внимательно отнеситесь к сохранению документа, если вы попытаетесь сохранить файл в прежнюю папку с прежним названием, то новый документ заменит собой старый файл

Чтобы сохранить на диске два разных документа, нужно использовать для них разные названия или папки.
При сохранении файла также обратите внимание на его расширение. Если документ в дальнейшем будет открываться с помощью программы Word 2003 года выпуска и более старшими версиями, то используйте формат doc

Если документ нужен для программы 2007 года и более новых версий, то подойдет формат docx. Также стоит помнить, что формат doc открывается как на старых версиях программы, так и на новых, но у них ограниченное форматирование. Стоит понимать, что отображение текстового документа не стандартными символами – это не только признак неизвестной кодировки, возможно в используемом редакторе нет нужного шрифта, в таком случае нужно менять не кодировку, а шрифт.

Выбор кодировки

  1. Откройте вкладку Файл.

  2. Выберите пункт Сохранить как.

    Чтобы сохранить файл в другой папке, найдите и откройте ее.

  3. В поле Имя файла введите имя нового файла.

  4. В поле Тип файла выберите Обычный текст.

  5. Нажмите кнопку Сохранить.

  6. Если появится диалоговое окно Microsoft Office Word — проверка совместимости, нажмите кнопку Продолжить.

  7. В диалоговом окне Преобразование файла выберите подходящую кодировку.

    • Чтобы использовать стандартную кодировку, выберите параметр Windows (по умолчанию).

    • Чтобы использовать кодировку MS-DOS, выберите параметр MS-DOS.

    • Чтобы задать другую кодировку, установите переключатель Другая и выберите нужный пункт в списке. В области Образец можно просмотреть текст и проверить, правильно ли он отображается в выбранной кодировке.

      Примечание: Чтобы увеличить область отображения документа, можно изменить размер диалогового окна Преобразование файла.

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

    Если разрешена подстановка знаков, знаки, которые невозможно отобразить, будут заменены ближайшими эквивалентными символами в выбранной кодировке. Например, многоточие заменяется тремя точками, а угловые кавычки — прямыми.

    Если в выбранной кодировке нет эквивалентных знаков для символов, выделенных красным цветом, они будут сохранены как внеконтекстные (например, в виде вопросительных знаков).

  9. Если документ будет открываться в программе, в которой текст не переносится с одной строки на другую, вы можете включить в нем жесткие разрывы строк. Для этого установите флажок Вставлять разрывы строк и укажите нужное обозначение разрыва (возврат каретки (CR), перевод строки (LF) или оба значения) в поле Завершать строки.

Избавляемся от кракозябр через настройки компьютера

Первый шаг, который нужно сделать для исправления ошибок в отображении русского языка — это зайти в панель управления. Это можно сделать несколькими способами. Один из самых простых – это выполнить щелчок правой кнопкой мышки на кнопке «Пуск», после чего в появившемся перечне выбрать опцию «Панель управления».

На открывшейся форме отдаем предпочтение подразделу «Регион, язык и часы». Выбираем эту опцию среди других категорий в панели.

При входе в представленный раздел меню выбираем категорию «Региональные стандарты».

Здесь настраиваются форматы времени и даты, числовые разделители (дробной и целой частей, групп разрядов), число дробных знаков, формат отрицательных чисел, система единиц (американская или метрическая). Также в этом пункте меню можно конфигурировать разметку отображения денежных единиц, их обозначение, разделитель дробной и целой частей денежной суммы, а также разделитель групп разрядов. Более того, именно здесь можно настроить региональную локаль отображения символов в операционной системе. Чтобы сделать это, перейдем на вкладку «Дополнительно».

В разделе текущего языка программ с отсутствием поддержки Юникод нажимаем контрол «Изменить язык системы».

В появившемся перечне выбираем вариант «Русский (Россия)».

После того, как выбор языка будет сделан, появится предупреждение о том, что компьютер требуется перезагрузить.

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

Данная статья, конечно же не решает все проблемы с исправлением языка на удобоваримый. Если указанный выше метод не помог, понадобятся некоторые изменения в реестре.

Что такое кодировка текста и с чем ее едят?

Начать хотелось бы с того, что этой статьи могло бы и не быть, т.к. компьютерно-юзательная жизнь автора этих строк протекала вполне себе спокойно и достойно. Но вот в один прекрасный день, шляясь по просторам сети Интернет не со своего ПК, я столкнулся с непонятными явлениями на некоторых сайтах. Заходя на интернет-ресурсы, я видел не привычный нам русский алфавит и красивый понятный текст, а какую-то ересь в виде непонятной последовательности символов. Выглядела она примерно вот так (см. изображение).

Сначала я подумал, что моя любимая Мозилка (браузер Firefox) перегрелась и ей пора вызывать неотложку, но потом начал понимать, что проблема, скорее всего, на стороне ресурса сети и кроется она в неправильно настроенной кодировке. Это действительно оказалось так, и пошаманив немного с бубном, проблемка была оперативно решена. Результатом же всех моих любовных похождений и стал сегодняшний материал. Собственно, поехали разбираться в деталях.

Всю информацию, представленную в цифровом виде и находящуюся в глобальной паутине, нужно рассматривать с двух сторон: первая – со стороны пользователя (красивый и ухоженный текст на экране монитора) и вторая – со стороны поисковой машины (некий программный код, состоящий из различных тегов/метатегов, таблицы символов и прочее).

Если Вы хоть немного знакомы с языком разметки гипертекста (HTML), то должны быть в курсе, что сайт глазами поисковых машин (Google, Яндекс) видится не как обычный текст, а как структурированный документ, состоящий из последовательностей различного рода тегов. Чтобы было понятней, о чем я говорю, давайте взглянем на всеми нами любимый сайт Заметки Сис.Админа” проекта , но не глазами обычного пользователя, а “глазами” поисковика. Для этого нажимаем сочетание клавиш Сtrl+U (для браузеров Firefox и Chrome) и видим следующую картину (см. изображение):

Перед нами машинный вариант sonikelf.ru, вот в таком вот непрезентабельном виде он подается поисковым системам и именно в таком виде они его и кушают. Если бы мы просто взяли и “засандалили” варианты статей из блокнота или Word обычным текстом, машины бы им не то что подавились, они бы даже и есть его не стали. Итак, перед нами главная страница проекта в HTML-виде

Обратите внимание на строку с надписью UTF-8, это не что иное, как пресловутая кодировка текста страницы, именно она и отвечает за формат вывода информации в презентабельном виде, в результате чего через браузер мы видим нормальный текст

Возможно вас заинтересует: Как удалить учетную запись на Windows 10

Теперь давайте разберемся, почему же происходит так, что порой на экране монитора мы видим кракозябры. Все очень просто, проблема кроется в открытии файла в неверной кодировке. Если перевести на бытовой язык, то допустим Вас послали в магазин за молоком, а Вы притарабанили хлеб, вроде бы тоже съестное, но совсем другой формат продукта.

Итак, теперь давайте разбираться с теорией и для этого введем некоторые определения.

  1. Кодировка (или “Charset”) – соответствие набора символов набору числовых значений. Нужна для “сливания” информации в интернет, т.е. текстовая информация преобразуется в биты данных;
  2. Кодовая страница (“Codepage”) – 1 байтовая (8 бит) кодировка;
  3. Количество значений, принимаемое 1 байтом – 256 (два в восьмой).

Соответствие “символ-изображение” задается с помощью специальных кодовых таблиц, где каждому символу уже присвоен свой конкретный числовой код. Таких таблиц существует достаточно много, и в разных таблицах один и тот же символ может идентифицироваться по-разному (ему могут соответствовать разные числовые коды).

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

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

Способы перекодировки текста (↑)

Под перекодировкой текста стоит понимать процесс конвертирования текстовых файлов, скриптов и других текстовых данных из одной кодировки в другую. Наиболее часто приходиться конвертировать тексты между следующими кодировками: win1251, koi8 и UTF. Если у Вас проблемы с другой кодировкой, то подход к решению проблемы сохраняется. Перейдём от теории к практике.

Программа «Shtirlitz»

С помощью программы «Shtirlitz» («Штирлиц») легко можно расшифровать, раскодировать русский текст или перекодировать из одной кодировки в другую. Программа разработана под ОС «Windows» и работает с большинством известных кодировок.

Если бы ни ограничения, с которыми нам однажды пришлось столкнуться, то на этом можно было бы закончить давать Вам советы по раскодировке текстов. Программы «Штирлиц» было бы достаточно для решения всех проблем.

Однажды, нашим специалистам в процессе переноса сайта на хостинг потребовалось перекодировать файл дампа базы данных «MySql» из кодировки «UTF» в «win1251». Всё бы хорошо, но дамп базы был очень большого размера (более 100 Мб). Использовать программу «Штирлиц» для смены кодировки файла не получилось, поскольку она просто зависала при работе с таким объёмом текста. Преобразовать кодировку файла удалось, написав специальный скрипт на языке PHP. Остановимся на нём поподробнее.

Скрипт на PHP для смены кодировки текста

Приведём несколько модификаций php-скриптов для изменения кодировки файлов. Каждый из скриптов, решает свою несложную задачу. Вы можете дорабатывать их и использовать по своему усмотрению. Только обязательно делайте резервную копию важных данных перед порчей ;).

Задача 1. Смена кодировки файла

Пример кода PHP для изменения кодировки файла с «UTF» на «win1251»:

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

Пример кода PHP для изменения кодировки с «UTF» на «win1251» у всех файлов в заданном каталоге:

Приведённые скрипты php наглядно демонстрируют использование функции iconv() для работы с кодировками. Но нашу проблему перекодировки больших по размеру файлов ни первый, ни второй скрипт не решают. Например, если размер исходного файла перед обработкой был 1 000 000 байт, то в процессе отладки мы наблюдали следующее:

Т.е. видно, что после применения функции iconv над длинной строкой мы получали урезанную до 8763 символов строку. При этом урезанная строка имела правильную нужную нам кодировку. К сожалению, мы не смогли понять странное поведение функции iconv() при работе с длинной строкой текста.

Проблему удалось решить следующим способом. Мы стали разбивать большой текст на части и передавать их на обработку в функцию iconv.

Возможно, Вы столкнулись с подобной проблемой при работе с большими файлами и наш скрипт пригодится.

Задача 3. Смена кодировки большого файла

Пример кода PHP для изменения кодировки с «UTF» на «win1251» у большого файла:

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

Инструкция для Notepad++

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

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

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

Стоит упомянуть, что Notepad++ весьма удобен для редактирования различных кодов. Например, PHP, HTML. Собственно, поэтому он широко распространен среди многих пользователей, которые периодически работают с исходным кодом, например, тех же сайтов. Что уж говорить, я сам периодическим им пользуюсь. Много места на диске не занимает, работает быстро, коды просматривать и редактировать удобно. Ладно, на этом завершу мысль, не буду превращать эту статью в обзор хорошего программного обеспечения для конкретных целей. Хотя, в будущем, скорее всего, еще вернусь к данной теме.

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

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

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

Adblock
detector