Using C# in .Net 2003, DataSet.ReadXml fails when a percentage (%) sign
is in the filename followed by 2 hex characters. Seems that the %
sign is likely encoding the following 2 hex characters. So
c:\test%ab.xml fails for ReadXml since %ab is interpreted as 171 and
c:\test171.xml does not exist. There is no problem with c:\test%mn.xml
because "mn" is not a hex code. If I replace the % sign with %25
(25hex = 37dec = ascii code for %), the ReadXml function succeeds since
it is interpreted as c:\test%ab.xml. So I had to write a workaround
function to read a filename, replace any occurance of the % character
with %25, then call ReadXml. Yuk.
I found another related post that is about 2 years old that seems to be
using VB6 rather than C#
(http://groups.google.com/group/micro...3b2311783c011).
Is there some switch in the DataSet object to ignore %encoding in the
filename? %encoding is really only used in web dev rather than windows
dev anyway right? Is there a more appropriate workaround?