Технологии
PHPExcel - вопрос №749283
При открытии страниции выходят всякие иероглифы, но никак не создает файл эксель, а если изменить строку Excel5 на Excel2007 то просто белый экран, вот тут файлы index-function.
сентябрь 8, 2013 г.
-
Всего ответов: 1
-
Для того чтобы в Excel корректно отображался текст в формате Unicode(UTF-8), воспользуемся возможностями другого текстового редактора, например Notepad++Допустим изначально мы имеем нечитаемый файл с расширением .csv (или файл формата: .xls, неважно). В Excel, его содержимое выглядит примерно так:Excel отображает содержимое некорректноИз рисунка видно, что кириллица закодированная в UTF-8 превратилась в абракадабру. Но дело, как Вы увидите дальше, не только в Excel, который всё-таки понимает UTF-8. Но понимает, по-своему, узкоформатно. Итак, начнем.
Алгоритм перекодировки в UTF-8 ( Excel 2007, Excel 93-2004):
1. Открываем в Notepad++ наш документ:Notepad++ отображает содержимое корректноКак видим, Notepad++ декодирует формат UTF-8 правильно. Смотрим в правый нижний угол редактора. В углу отображается текущая кодировка: ANSI as UTF-8.Именно эта кодировка «ANSI as UTF-8″ и не распознается программой Эксель. Чтобы кодировка распознавалась, нам нужем вариант UTF-8 в чистом виде.текущая кодировка ANSI as UTF-82. В программе Notepad++ заходим в меню Encoding (в русскоязычной версии текстового редактора слово «Encoding» заменено словом «Кодировка», хотя могу ошибаться) и конвертируем файл в UTF-8:
Обратите внимание что после конвертации на экране ни один символ не изменился. Изменилась только текущая кодировка, указанная в правом нижнем углу. Все изменения скрыты от глаз. Теперь наш файл благополучно закодирован в UTF-8.конвертация в UTF-83. Следующий шаг — выбор набора символов. Если вы пишите на русском, то выбираете кириллицу и windows-1251. Снова открываем меню Encoding и далее > Character sets > Cyrillic > Windows-1251:Если Вы пишете на японском, арабском или, например, греческом, то выбираете соответствующий набор символов.Конвертация в Cyrillic Windows-1251Если после выбора набора символов появилось диалоговое окно с предложением сохранить файл и предупреждением что изменения необратимы, жмём «Yes».
Может появится еще одно диалоговое окно, если обрабатываемый файл открыт в Excel или в другой программе. Если это окно появилось, нажимаем «Yes» в Notepad++, закрываем наш файл в другой программе. После чего возвращаемся в текстовый редактор и повторяем шаг 3.ПредупреждениеИ опять, заметьте, после установки нового набора символов ни один символ на экране «не дрогнул».4. А теперь повторяем шаг 2. Снова кодируем наш набор символов в UTF-8. И снова никаких изменений на экране. Всё символы должны читаться.Теперь Excel отображает файл в кодировке UTF-8 корректно5. Теперь сохраняем получившийся файл не меняя его расширения. Вот и всё. Можете открывать Ваш файл в Excel и пользоваться. Если Вы всё сделали правильно, то он должен отображаться корректно.Как видите Excel понимает UTF-8, но только в чистом виде. Пока продолжаются войны форматов, нам потребителям ничего другого не остается, как научиться подчинять себе необходимые из форматов.
Похожие вопросы
если в ячейке будет число в диапазоне 1-25, то присвоить значение 50, также если будет число в диапазоне 26-50, присвоить значение 100
апрель 27, 2024 г.
Добрый день! Есть массив данных с миллионами строк, обрабатываемый в Python, при выводе в csv формат файл становится очень тяжелым более 15гб =>
март 29, 2024 г.
Помогите в Excel сделать формулу, которая находит из даты количество дней в году
март 18, 2024 г.
Добрый день! Подскажите, пожалуйста, как за счет функции просмотрX (или с использованием дополнительных функций) задать условия поиска,
февраль 24, 2024 г.
Здравствуйте, подскажите как сделать что бы при добавление столбца в лист 1 он автоматически удалялся из листа 2?
февраль 8, 2024 г.