Reference to undeclared entity 'nbsp' while reading xml from URL in c#?

There are two ways to handle this, but for both you need to make changes to the input file.

1) Change your   to   in you input files. It is always better to use Unicode and avoid readable entities in XML documents. Use plain Unicode characters or their numerical form.

2) If you still need/want to use   You can declare a custom doctype in the file that will do the conversion for you:

<!DOCTYPE doctypeName [
   <!ENTITY nbsp "&#160;">
]> 

This problem is coming because &nbsp; isn't one of XMLs predefined entities.


I had this same problem today, and I was able to solve it by changing the HTML entity name to an HTML entity number.

Per this helpful forum post, I was able to fix this error.

HTML entity names are not well supported in XML. This is why the "nonbreaking space"--"nbsp"--triggers this frustrating error.

The easiest way to fix this issue is to use HTML entity numbers, which means changing &nbsp; to &#160;.

For a comprehensive listing of HTML entities with names and numbers, see:

W3 School's HTML Entity reference page.

Official W3C Page on Entity Sets.

Tags:

C#

.Net

Xml