Форум русскоязычного сообщества Ubuntu


Автор Тема: Как c помощью xmllint полцчить значение атрибута encoding?  (Прочитано 1479 раз)

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

Axa-Ru

  • Автор темы
  • Гость
Есть xml файл:
Код: (xml) [Выделить]
<?xml version="1.0" encoding="windows-1251"?>
<FictionBook xmlns="http://www.gribuser.ru/xml/fictionbook/2.0" xmlns:l="http://www.w3.org/1999/xlink">
 <description>
  <title-info>
   <genre>prose_rus_classic</genre>
  </title-info>
 </description>
</FictionBook>

Как c помощью xmllint полцчить значение атрибута encoding?

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Это типа декларации XML, через xpath не выковыривается.
Либо достать регулярками sed/grep, либо можно всё перекодировать сразу / на лету и потом вообще про кодировку не вспоминать:
xmllint --encode "UTF-8" --output file.xml.utf8 file.xml
« Последнее редактирование: 01 Сентября 2014, 14:31:11 от ArcFi »

Axa-Ru

  • Автор темы
  • Гость
ArcFi,спасибо.

Было опасение, что при перекодировке utf-8 в utf-8 будет испорчен файл. Поэтому хотел предварительно проверить.
Оказалось, что можно брать на входе utf-8 и указывать выходной файл тоже в utf-8.

xmllint --encode "UTF-8" file.xml >file.xml.utf8

 

Страница сгенерирована за 0.049 секунд. Запросов: 25.