[mapguide-users] ByteReader Problem
Kenneth, GEOGRAF A/S
ks at geograf.dk
Fri Aug 31 12:13:58 EDT 2007
The only way around it, that I have found, is to copy/paste code like this:
System.IO.MemoryStream ms = new System.IO.MemoryStream();
byte[] buf = new byte[8*1024];
int read = 1;
while(read != 0)
{
read = mapByteRdr.Read(buf, buf.length);
ms.Write(buf, 0, read);
}
//ms now contains the stream
Regards, Kenneth, GEOGRAF A/S
Campbell, Keith A skrev:
> Thanks Dennis.
>
> I've tried this, but I'm only getting 8192 bytes read into the byte
> buffer. This seems to be the problem mentioned by Kenneth. The Read
> method doesn't seem to allow the start location for the read to be
> set, so looping until the entire content of the Resource is read into
> the buffer doesn't seem to be an option.
>
> Presumably somebody must have found a way around this.
>
> Keith
>
> ------------------------------------------------------------------------
> *From:* mapguide-users-bounces at lists.osgeo.org
> [mailto:mapguide-users-bounces at lists.osgeo.org] *On Behalf Of *Jonio,
> Dennis (Aviation)
> *Sent:* 31 August 2007 14:05
> *To:* MapGuide Users Mail List
> *Subject:* RE: [mapguide-users] ByteReader Problem
>
> ... this sequence tends to work
>
>
>
> // For some reason the MgByteReader "disappears"
>
> // This seems to work ....
>
> long long_length = rs.GetResourceContent(resId).GetLength();
>
> byte[] byteBuffer = new byte[long_length];
>
> int numBytes =
> rs.GetResourceContent(resId).Read(byteBuffer, (int)long_length);
>
>
>
> -----Original Message-----
> *From:* mapguide-users-bounces at lists.osgeo.org
> [mailto:mapguide-users-bounces at lists.osgeo.org] *On Behalf Of
> *Campbell, Keith A
> *Sent:* Friday, August 31, 2007 7:10 AM
> *To:* MapGuide Users Mail List
> *Subject:* [mapguide-users] ByteReader Problem
>
>
>
> I am trying to alter a map definition through the API and cannot get
> the contents of the MgByteReader in string format. Here's the code:-
>
> String mapDefinition = "Library://My Folder/Maps/My
> Map.MapDefinition";
> MgResourceIdentifier MapResID = new
> MgResourceIdentifier(mapDefinition);
>
> MgByteReader mapByteRdr =
> res.GetResourceContent(MapResID);//res is instantiated Resource Service.
>
> XmlDocument doc = new XmlDocument();
>
> doc.LoadXml(mapByteRdr.ToString());
>
> LoadXML fails with an error ' Root element is missing'. I can copy the
> contents of mapByteRdr from Visual Studio at runtime and it contains
> properly formatted XML for the map definition. If I use the ToFile()
> method, the resultant file is empty. I cannot see why these two
> methods do not return the xml string in the reader. Any help is welcome.
>
> Cheers,
>
> Keith
>
>
>
> *This email and any attached files are confidential and copyright
> protected. If you are not the addressee, any dissemination of this
> communication is strictly prohibited. Unless otherwise expressly
> agreed in writing, nothing stated in this communication shall be
> legally binding.*
>
> The ultimate parent company of the Atkins Group is WS Atkins plc.
> Registered in England No. 1885586. Registered Office Woodcote Grove,
> Ashley Road, Epsom, Surrey KT18 5BW.
>
> P *Consider the environment. Please don't print this e-mail unless you
> really need to.*
>
> ------------------------------------------------------------------------
>
> E-mails are automatically scanned for viruses using McAfee.
>
>
>
> This message has been scanned for viruses by MailControl
> <http://bluepages.wsatkins.co.uk/?6875772>
>
>
>
> *This email and any attached files are confidential and copyright
> protected. If you are not the addressee, any dissemination of this
> communication is strictly prohibited. Unless otherwise expressly
> agreed in writing, nothing stated in this communication shall be
> legally binding.*
>
> The ultimate parent company of the Atkins Group is WS Atkins plc.
> Registered in England No. 1885586. Registered Office Woodcote Grove,
> Ashley Road, Epsom, Surrey KT18 5BW.
>
> P *Consider the environment. Please don't print this e-mail unless you
> really need to.*
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> mapguide-users mailing list
> mapguide-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapguide-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/mapguide-users/attachments/20070831/a54fb1ff/attachment.html
More information about the mapguide-users
mailing list