Хорошо, так что это своего рода хак ... но, возможно, это должно быть. Я пишу приложение в XNA, которое из моих исследований по этой проблеме, по-видимому, не поддерживает XML-версию 1.1. Я читаю содержимое документа ePub, и одна из новых книг кодирует его содержимое как XML-документ версии 1.1. Это приводит к сбою моей программы, однако структура такая же, как и остальная. Единственное, что удерживает его от работы, это жестко закодированное «1.0» в классе XmlDocument.Заменить слово в XML-файле через StreamReader в XNA?
Возможно ли, что я мог прочитать в файле из потока, увидеть, если он содержит:
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
и просто заменить его на «1.0»? Тогда я мог бы взять его как XmlDocument. Я не делаю никаких записей в файле или каких-либо сложных структурных чтений, просто ищу некоторые узлы и вытягивая значения, поэтому я не знаю, какими будут последствия этого.
Почему бы просто не сделать это с помощью текстового редактора или заменить его с помощью регулярного выражения? –
Я действительно только что узнал о Regex сегодня, но я еще не знаю, как его использовать. Что касается того, почему бы не заменить его вручную, приложение автоматически вытащит эти XML-файлы из архива ePub, поэтому его замена вручную не является вариантом. – kcoppock