Hi, I am new to xml, so if I ask something stupid or funny, pls don't laugh.
my problem is like this:
I have a data structure like this
class mydata
{
byte[] data;
};
// I wrote it to xml like this
XmlTextureWriter writer;
writer.WriteStartElement("MyData");
writer.WriteAttributeString("Length",md.data.Lengt h.ToString());
writer.WriteBase64(md.data,0,md.data.Length);
writer.WriteEndElement();
// I want to read it out
XmlTextReader reader;
while(reader.Read())
{
switch(reader.NodeType)
{
case XmlNodeType.Element:
MyData md = new MyData();
while(reader.MoveToNextAttribute())
{
if(reader.Value == "Length")
md.data = new byte[Int32.Parse(reader.Value)];
}
reader.MoveToContent();
reader.ReaderBase64(md.data,0,md.data.Length);
break;
case XmlNodeType.EndElement:
// the problem is here, I am expecting the endelement will be read, but
it never happen
// unless I took out the ReadBase64 Call
break;
}
}
Anyone have any suggestion?
Thanks a lot!
/Jinsong