This project has moved and is read-only. For the latest updates, please go here.

loading a kml file

May 10, 2013 at 4:27 PM
I would like to know how to load a kml file from the local disk. I searched on the internet regarding this but went in vain.

Thanks in advance.
May 11, 2013 at 12:08 PM
I've created a new page in the documentation which might be able to help in this regard - let me know of any problems:

Extracting information from a Kml file

Jul 23, 2013 at 11:06 PM
The kml is null for me. I'm trying this way:
        MemoryStream stream = new MemoryStream(kmlfile);
        var file = SharpKml.Engine.KmlFile.Load(stream);
        SharpKml.Dom.Kml __kml__ = file.Root as SharpKml.Dom.Kml;
It's a usual kml file and this code gives null for kml.
Jul 24, 2013 at 6:45 AM
Two questions: is the root element of the Kml file a Kml element (doesn't have to be but most commonly is)? If not the cast won't work.

Second question, what namespace is being used by the Kml file? You may need to look at the Legacy Files page if it's non-standard.

Failing that can you post a snippet of the Kml file you are trying to load?
Aug 1, 2013 at 9:30 AM
Edited Aug 3, 2013 at 6:25 PM
Aug 1, 2013 at 9:58 AM
Your good... the your link added the answer.

thanks a lot
Aug 3, 2013 at 6:29 PM

thanks for your answer. It helped in some cases.
Now I have kml files, which I can't read (with edit...) it seems they are coded, or something. It looks like this:
PK   olŃë† j  doc.kmlě˝kĎŻW‘Ţů>RľƒÇŃĽkěu>CDÓM„ęž@F‰˘(ÚŘ»Ťăí±7ćÓOýę^µŞţť†N+‡‰"laěg×sßë^‡Zu¸ęŞO˙ĺďóŐ˙ůí·ß}ůîë|˜?J~đöëĎŢ}ţĺ×_üŕĂóËź|o}ř/ How can I pars this with SharpKML? The parser gives me this:
' ', hexadecimal value 0x03, is an invalid character. Line 1, position 3.

Aug 3, 2013 at 8:01 PM
It looks like that might be a Kmz file, which is a compressed Kml file. The library should be able to handle those using the SharpKml.Engine.KmzFile class.