I am trying to read a 3GB XML file through a URl and store all the jobs in dataset. XML looks like this:
<?xml version="1.0"?>
<feed total="1621473">
<job>
<title><![CDATA[Certified Medical Assistant]]></title>
<date>2016-03-25 14:19:38</date>
<referencenumber>2089677765</referencenumber>
<url><![CDATA[http://www.jobs2careers.com/click.php?id=2089677765.1347]]></url>
<company><![CDATA[Broadway Medical Clinic]]></company>
<city>Portland</city>
<state>OR</state>
<zip>97213</zip>
</job>
<job>
<title><![CDATA[Certified Medical Assistant]]></title>
<date>2016-03-25 14:19:38</date>
<referencenumber>2089677765</referencenumber>
<url><![CDATA[http://www.jobs2careers.com/click.php?id=2089677765.1347]]></url>
<company><![CDATA[Broadway Medical Clinic]]></company>
<city>Portland</city>
<state>OR</state>
<zip>97213</zip>
</job>
</feed>
This is my code
XmlDocument doc = new XmlDocument();
doc.Load(url);
DataSet ds = new DataSet();
XmlNodeReader xmlReader = new XmlNodeReader(doc);
while (xmlReader.ReadToFollowing("job"))
{
ds.ReadXml(xmlReader);
}
But I got memory out of bound exception. Browsed on google and found this:
DataSet ds = new DataSet();
FileStream filestream = File.OpenRead(url);
BufferedStream buffered = new BufferedStream(filestream);
ds.ReadXml(buffered);
still the same exception. I also read about XmlTextReader but i don't know how to make use of it in my case. I know why i am getting the exception but i don't know how to overcome that.Thanks