2015-09-23 3 views
0

Моя программа является парсером HTML и сохраняет все в файл XML. Проблема заключается в том, когда я пытаюсь открыть файл и читать текст, это дает мне, например: "NAME" , когда он должен быть "NAME" кажется, что, когда я использую .Replace(""", """) Он пишет & Quot, как & усилителя; . еще раз. Как мне с этим справиться?Замена & quot; с " для XML

Edit:

Это <td> "IN QUOTE" BLA BLA BLA</td>

я сохранить это право здесь:

debt.Debtor.LegalPerson.Name = nazwa; 

Хотя отладки строка я получаю: &quot;IN QUOTE&quot; BLA BLA BLA

Но когда я все в писать XML

var serializer = new XmlSerializer(typeof(BGW_IMPORT)); 
      serializer.Serialize(writer, bgw); 
     } 

     ... 
     } 
     if (File.Exists(FilePath)) 
     { 
      //XDocument existing; 
      XmlDocument ex = new XmlDocument(); 
      XmlDocument docX = new XmlDocument(); 

      using (FileStream fs = new FileStream(FilePath, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None)) 
      { 
       //existing = XDocument.Load(fs); 

       docX.LoadXml(doc.Document.ToString()); 
       ex.Load(fs); 

       foreach (XmlNode wiersz in docX.SelectNodes("//Debt")) 
       { 
        XmlNode importNode = ex.ImportNode(wiersz, true); 
        ex.DocumentElement["Debts"].AppendChild(importNode); 

       } 
      } 

      File.Delete(FilePath); 
      using (FileStream fs = new FileStream(FilePath, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None)) 
      { 
       ex.Save(fs); 

      }... 

В конце концов, я получаю:

<Name>&amp;quot;IN QUOTE&amp;quot;BLA BLA BLA</Name> 

Когда я хочу:

<Name>&quot;IN QUOTE&quot;BLA BLA BLA</Name> 
+0

Можете ли вы привести пример исходного HTML, создаваемого XML, нужного вам XML и кода, который вы используете? –

+0

Я не могу привести полный пример, но я отредактировал поток, надеюсь, что это поможет. – Qbej

+0

Почему вы не можете привести полный пример? Непонятно, почему вы используете XmlSerializer вообще ... –

ответ

0

сначала нужно кодировать строку, используя System.Web.HttpUtility.HtmlEncode()

и затем декодировать с использованием HtmlDecode()

см. ссылку: https://msdn.microsoft.com/en-us/library/7c5fyk1k(v=vs.110).aspx

+0

'вместо .Replace (" " "," "") 'У меня нет такой замены. и замена & amp на" \ "" оставила бы я с " – Qbej

+0

мой плохой .. Я отредактировал свой ответ –

+0

Это странно, но ничего не делает, я имею в виду, но это так, но я чувствую себя таким и снова заменяется & ; в конце. Не знаю ... возможно это какой-то тип проблемы с кодированием? – Qbej