Tuesday, 17 February 2015

c# Xml syntax error



I have method in order to replace xml


Replace method



public string EscapeXMLValue(string xmlString)
{
if (xmlString == null)
throw new ArgumentNullException("xmlString");

return xmlString.Replace("&", "\"");
}


My code below and i get exception below code


Code:



if (!Directory.Exists(sPath))
{
Directory.CreateDirectory(sPath);
}

document_type = System.IO.Path.GetExtension(flPolicyList.FileName).Replace(".", "");
document_name = uf.GenerateGUID(false) + "." + document_type;
flPolicyList.PostedFile.SaveAs(sPath + document_name);

StreamReader objStreamReader = default(StreamReader);

objStreamReader = File.OpenText(sPath + document_name);
Encoding enc = Encoding.Default;
StreamReader reader = new StreamReader(sPath + document_name,enc, true);

XmlTextReader Xmlreader = new XmlTextReader(sPath + document_name);
int i = 1;
while (Xmlreader.Read())
{
if (i == 2)
{
enc = Xmlreader.Encoding;
break;
}
i++;
}



XML = objStreamReader.ReadToEnd();
XML = System.Web.HttpUtility.HtmlDecode(File.ReadAllText(sPath + document_name, enc));
objStreamReader.Close();

XML = EscapeXMLValue(XML);

xmlDoc.LoadXml(XML); // I get error here


Error Value :



<Vehicle>HB ICON 1.5 DCI 90 S&amp;S</Vehicle>


Error Name:



An error occurred while parsing EntityName. Line 22503, position 40.


Even i replace & value i get exception . how can i solve problem , Where i miss ?


No comments:

Post a Comment