Catfood.Shapefile 1.40

Updated on Monday, September 19, 2022

I’ve just released a small update to Catfood.Shapefile. Stephan Stapel, who implemented PolyLineM support, has contributed a patch that improves the class hierarchy. CodePlex user originSH suggested supporting the ACE driver for 64-bit systems. I’ve added a constructor overload that allows you to use predefined Jet and ACE connection strings or provide your own templates if necessary. Thanks to Stephan and originSH.

Catfood.Shapefile is a .NET library for enumerating ESRI shapefiles. I originally wrote the library to help me build some complex layers in Catfood Earth. Since then it’s picked up thousands of users and some really valuable suggestions and patches from the CodePlex community. I’m very glad a took a couple of hours to open source the library back in 2009.

Add your comment...

Related Posts

(All Code Posts)

Reviews and Links for November 2011

Updated on Friday, February 24, 2017

Reamde by Neal Stephenson

5/5

Intelligent and humorous if highly contrived thriller set loosely around an MMORPG. Loved it.

 

Embassytown by China Miéville

4/5

Highly original tale of colonists cohabiting with some very unusual aliens with a very unusual language. It reads like J.G. Ballard and Nicholson Baker decided to collaborate on some SciFi.

 

The Affair (Jack Reacher, #16) by Lee Child

3/5

Not bad, returns to when Reacher was in uniform and tells the story of how he left the Army (the answer may surprise you). As with the last few in the series it all comes a little too easily and you wish there was at least one worthy opponent. I'm hooked though so as long as Child keeps writing them I'll keep reading.

 

Professional Android 2 Application Development by Reto Meier

3/5

Solid foundation and covers the platform you need to target to reach the majority of Android devices.

 

Links

RE: Feel free to use the code, no attribution required.  http://t.co/IJTcOz3p

BBC News - 7 questions on computer programmes http://t.co/XKylU7WT (more of a history / pop culture quiz)

Scooby-Doo and Secular Humanism: http://t.co/4h8M8kkK

4 of 5 stars to Embassytown by China Miéville http://t.co/kPwIrmDF

ITHCWY: Occupy Intellectual Ventures: Send them a troll. Now. http://t.co/VorWmZpz

Wow, My Flout score is -7 on @floutdotme! Get yours at http://t.co/1Sl8ei72

troll the troll! send a troll doll to intellectual ventures. http://t.co/S09ML14T via @nathtone

Walking through doorways causes forgetting, new research shows: http://t.co/JBbJXAaD

+1: Why Software Projects are Terrible and How Not To Fix Them: http://t.co/kE7WWix5

Hilarious, I had to Google how to power off Windows 8. Didn't figure it our until the third link: http://t.co/X1wrkh7R #fail

Building a Useful Task Board: http://t.co/icc8y4cU - only this should be a large monitor and an #API

#API Design Webinar http://t.co/rbDwus37 from @theamiableapi - some very valuable nuggets

Wow. Going to have to get this as a poster just to fully grok it: http://t.co/Z6iie3K5

ITHCWY: PolyLineM support in Catfood.Shapefile: I’ve just updated Catfood.Shapefile, my ESRI Shapefile parser for… http://t.co/ll50wcEi

Cal band at justanswer http://t.co/QOLcbe7e (missed this while at lunch)

Citogenesis: http://t.co/EH5K2xLg

Extensive document dump on Microsoft's shallow anti-Android bullying: http://t.co/tdEhMNLh #patents from @groklaw

Toast sandwich is UK's 'cheapest meal' http://t.co/0LG9zNOl (can't possibly be true - not factoring in cost of electricity!)

Analysis: The Darwin Economy: http://t.co/pSDkxupL

So True: What Your Favorite Map Projection Says About You: http://t.co/dW8pl2uK

Bootstrapped Company Behind iDrive, iBackup Is Fed Up With Patent Trolls: http://t.co/DP6KFLxH

The Real Cost of Patent Trolls: http://t.co/1Cu4C6cV via @bfeld

Flying rhinoceros: http://t.co/MIhWtT3L

Cool: 1% Of Nothing Launches To Get Startups Donating Equity: http://t.co/ZNy7HcZl

3 of 5 stars to Professional Android 2 Application De... by Reto Meier http://t.co/UqCtaJ3Z

'Have the people who designed this protocol really never made the twenty mile drive to San Francisco?' - http://t.co/wWk77ZpQ

Explaining 'Jobs' to Rudy Giuliani: http://t.co/ek78XEe9

ITHCWY: Catfood: Klout and Follower: Klout is building PageRank for people. You get a score between 0-100 based on… http://t.co/rGyYkY9q

Catfood Follower 1.40: http://t.co/79xDac4F via @CatfoodSoftware

Old friends... No CDTV though! At #CHM http://t.co/WGw6VOOL

How much did I used to want one of these! http://t.co/lHhnY0AG

At #CHM for Norvig v Horvitz. Will punch anyone who mentions Searle's Room. http://t.co/wPRO8tYa

Don't do it, like defining π as 4: BBC News - Changes to the world's time scale debated http://t.co/hFkrZi4g

RESTful API Design, Second Edition http://t.co/uZthmj9c #API from @landlessness

Rudy wishes I hadn't just shown him: "Saber-toothed squirrel" from the dinosaur days - Boing Boing http://t.co/Wf7Y0ttH

Marked as to-read: The Lean Startup by Eric Ries http://t.co/MC9M0Iti

Ex-Google Reader Product Manager Posts Scathing Review Of Reader Redesign | TechCrunch http://t.co/DscEAHTw

Google indexing via POST: http://t.co/oM2JmHqI (P.S. may not grok your robots.txt, suggests bending over)

Writing helpful API documentation « The Amiable API http://t.co/rx9QdKyk #API

Oakland PD confused: An Open Letter to the Citizens of Oakland From the Oakland Police Officers Association http://t.co/W5LIBY7D (me too)!

Study: why parents help their underage kids pretend to be 13 in order to use Internet sites - Boing Boing http://t.co/aoUSw5wu

Add your comment...

Related Posts

(All Reviews)

PolyLineM support in Catfood.Shapefile

Updated on Sunday, May 23, 2021

I’ve just updated Catfood.Shapefile, my ESRI Shapefile parser for .NET, with PolyLineM support thanks to a contribution from Stephan Stapel. The solution for the new version has also been updated to Visual Studio 2010.

Download Catfood.Shapefile.dll 1.30 from CodePlex.

Add your comment...

Related Posts

(All Code Posts)

ESRI Shapefile Reader in .NET

Updated on Sunday, March 12, 2023

ESRI Shapefile Reader in C#/.NET

Catfood.Shapefile is a .NET read-only, forward-only parser for Esri shapefiles. With Catfood.Shapefile it’s easy to enumerate all the shapes in a shapefile together with their metadata.

From version 2.00 Catfood.Shapefile is available via NuGet. It has also been migrated to .NET Standard 2.0. This means it is compatible with .NET Framework 4.61 or better and .NET Core 2.0 or better. If you use an older version of .NET then you should continue using Catfood.Shapefile 1.60. The source code is on GitHub.

Esri (originally Environmental Systems Research Institute) shapefiles are a GIS (geographic information systems) file format that can store a wide variety of geographic information. I originally started working with these files to add country borders to Catfood Earth.

Shapefiles actually consist of a number of different files with different extensions. There are three mandatory extensions: .shp, .shx and .dbf and so a shapefile containing borders might be distributed as borders.shp, borders.shx and borders.dbf. The .shp file contains the actual shape data in vector format, often lines or polygons. The .shx file is an index to the shapes. Finally the .dbf file is a database of metadata associated with the shapes. Catfood.Shapefile requires these three files.

There are several optional extensions that might be included with a shapefile. .prj contains the geographical projection, .xml is an alternate metadata format, .sbn and .sbx index for spatial queries, and .cpg defines the code page used by the shapefile.

Here is some sample code for a .NET 6 console application to print basic information about a shapefile and the first point in the first polygon:

To use this, create a new console application, paste the code into Program.cs and add Catfood.Shapefile via NuGet.

The default constructor uses a database connection string that uses the Jet driver. This is only available for 32-bit applications and you will need to target Windows x86 to use it. An overload is available that allows you to specify a custom connection string to access metadata.

Catfood.Shapefile supports Null, Point, MultiPoint, PolyLine, PolyLineM and Polygon shapes. Three dimensional shapes (PointZ, PolyLineZ and PolygonZ) are not currently supported. There is also currently no support for writing shapefiles. If you add any of this please send a pull request on GitHub!

I am grateful to the developers who have contributed to Catfood.Shapefile over the years. Most are credited in the release notes below. If you need help or have feedback please leave a comment on this post.

Updates

Catfood.Shapefile 2.00

I just released Catfood.Shapefile 2.00, my .NET parser for ESRI Shapefiles.

The big change is that I have migrated to .NET Standard 2.0. This makes it possible to use from .NET Core as well as classic .NET Framework from 4.6.1 up. If you need to use an older version of .NET Framework then you'll want to stick with Catfood.Shapefile 1.60.

Catfood.Shapefile is now also available via NuGet. This is the recommended way to install. The source code is still available on GitHub.

Catfood.Shapefile 1.60

I just released Catfood.Shapefile 1.60. This contains a fix from Libor Weigl that factors out the enumerator so that you can still access the shapefile after enumeration.

Catfood.Shapefile is a .NET library for parsing ESRI Shapefiles.

(previously)

Shapefile Update

A few people have asked for 3D shape support in my ESRI Shapefile library. I've never got around to it, but CodePlex user ekleiman has forked a version in his ESRI Shapefile to Image Convertor that supports PointZ, PolygonZ and PolyLineZ shapes. If that's what you need please check it out.

Catfood.Shapefile 1.50

I've just released a small update to my C# Shapefile library on Codeplex. Catfood.Shapefile 1.50 fixes a couple of bugs related to metadata and adds the ability to access metadata records directly via IDataRecord. 

Catfood.Shapefile 1.40

I’ve just released a small update to Catfood.Shapefile. Stephan Stapel, who implemented PolyLineM support, has contributed a patch that improves the class hierarchy. CodePlex user originSH suggested supporting the ACE driver for 64-bit systems. I’ve added a constructor overload that allows you to use predefined Jet and ACE connection strings or provide your own templates if necessary. Thanks to Stephan and originSH.

Catfood.Shapefile is a .NET library for enumerating ESRI shapefiles. I originally wrote the library to help me build some complex layers in Catfood Earth. Since then it’s picked up thousands of users and some really valuable suggestions and patches from the CodePlex community. I’m very glad a took a couple of hours to open source the library back in 2009.

PolyLineM support in Catfood.Shapefile

I’ve just updated Catfood.Shapefile, my ESRI Shapefile parser for .NET, with PolyLineM support thanks to a contribution from Stephan Stapel. The solution for the new version has also been updated to Visual Studio 2010.

Download Catfood.Shapefile.dll 1.30 from CodePlex.

ESRI Shapefile Library Update

I've just released a small update for my ESRI Shapefile Reader project on GitHub. The only change is a patch from SolutionMania that fixes a problem when the shapefile name is also a reserved name in the metadata database. The patch escapes the name preventing an exception from being thrown.

Catfood.Shapefile.dll is a .NET 2.0 forward only parser for reading an ESRI Shapefile. Download 1.20 from GitHub.

Catfood.Shapefile.dll 1.10

I've just released v1.10 of my ESRI Shapefile Reader (Catfood.Shapefile.dll). This is a .NET 2.0 forward only parser for reading shapefile content.

Sharon Tickell was kind enough to report two bugs with suggested updates. These have both been fixed in 1.10.

While working on these fixes I also discovered that there are no 64-bit Jet drivers (since releasing the first version I've upgraded to a 64-bit box for development). This is an easy fix, just target any application using Catfood.Shapefile.dll at x86. I've updated the demo application accordingly.

Download Catfood.Shapefile.dll from GitHub.

Add your comment...

Related Posts

(All Code Posts)

(Published to the Fediverse as: ESRI Shapefile Reader in .NET #code #shapefile #esri #github #codeplex #polylinem #c# #.net #nuget Catfood.Shapefile is a .NET library that provides easy access to Esri shapefiles (.shp, .shx, .dbf), available on NuGet and GitHub. )