NVision Solutions, Inc. Geographic Information Solutions

JShapeFile - Easy, Pure Java Support for Editing ShapeFiles

Purchase JShapeFile
JShapefile from NVision Solutions Inc. provides a pure Java method to read and write ESRI shapefiles from your Java application
Documentation
Download JShapeFile and try it out in your application or use the JShapeFile sample programs to test it as long as you'd like before purchasing. This version of JShapeFile is limited to writing 10 features per file with 10 points per feature.
Try & Buy

Click the link to visit the NVision Storefront and Purchase JShapeFile: JShapefile Product Information


NVision's JShapeFile library gives you a complete, well-tested, production quality, pure Java method to read and write ESRI shapefiles from your Java application.

JShapeFile is versatile. JShapeFile reads and writes all 14 shapefile types including 3-D shapefiles. Shapefiles can be read from the local file system, a networked drive, or even a remote Internet URL. JShapeFile is suitable for use in server-side applications, applets, and standalone desktop applications.

JShapefile is standard. Standards compliance is an often overlooked virtue of good software which helps make programs more future-proof and interoperable with other systems. JShapeFile will allow any developer to build shapefile support into applications quickly because of the library's predictable Java API. JShapeFile also has complete, well-written JavaDocs and numerous code examples to get your development team jumpstarted right away. NVision also provides our unique ShapeFile XML Specification which can be wired to JShapeFile for interoperability with other applications and Feature Data Specifications including those from the Open GIS Consortium using tools such as XSLT.

JShapeFile is robust. The NVision team developed this powerful libarary over a four year period with several design revisions. NVision uses JShapeFile in-house as well as in our customer's projects and our commercial products. In addition to being well-tested JShapeFile automatically validates data input and output to ensure compliance with the official ESRI Shapefile specification.


Licensing

A single license allows for installation on 5 development workstations or servers and 50 deployments for internal or external use. A server-based application is considered a single deployment.


Sample Code

The sample Java programs below demonstrate common shapefile operations using the JShapeFile library. In order to compile and run these programs you will need JShapeFile. If you haven't purchased JShapeFile you can download the demo version as a Java JAR file to test out the samples. The demo version offers the entire API and is not time-limited but it will only read or write 10 shapes per file with a maximum of 10 points per shape.


NVision ShapeFile XML DTD

Description: This is the NVision ShapeFile XML Specification which provides and XML markup language to describe any type of ESRI ShapeFile. This is an open specification used by NVision but generic enough to be used in any application. Several of the JShapeFile examples below use this DTD.

Source: shapefile.dtd


DescribeShape

Description: Reads a specified shapefile and displays a list of its points, records, type, and bounding box.

Source: DescribeShape.java
Binary: DescribeShape.class
HTML Colorized Source


MultipointExample

Description: This sample shows you how to write a multipoint shapefile using JShapeFile. The procedure for writing shapefiles does not vary much between the different types.

Source: MultipointExample.java
Binary: MultipointExample.class
HTML Colorized Source


PointExample

Description: This is a simple example of how to create a point shapefile with JShapeFile.

Source: PointExample.java
Binary: PointExample.class
HTML Colorized Source


PolygonExample

Description: This example shows you how to create a polygon shapefile.

Source: PolygonExample.java
Binary: PolygonExample.class
HTML Colorized Source


PolylineExample

Description: This example provides a template for creating polyline shapefiles.

Source: PolylineExample.java
Binary: PolylineExample.class
HTML Colorized Source


XML2Shape

Description: This powerful example takes an XML document and transforms it into a binary shapefile. The XML is based on NVision's ShapeFile XML DTD. You can programmatically or even manually create ShapeFile XML documents using any tool or language and turn them into ShapeFiles using a servlet or other Java implementation. If you then add in an XLST style sheet you can convert any other vector XML specification such as the Open GIS Vector Markup Language or even the Scalable Vector Graphics (SVG) XML specification.

Source: XML2Shape.java
Binary: XML2Shape.class
HTML Colorized Source


Shape2XML

Description: This example converts any shapefile into an NVision ShapeFile XML document for manual editing with a text editor or transformation into another vector markup language. These XML documents can be transformed back into shapefiles using XML2Shape.

Source: Shape2XML.java
Binary: Shape2XML.class
HTML Colorized Source


VerifyXML

Description: This program reads in and NVision ShapeFile XML document and validates the XML as well as the validating the data against the ESRI ShapeFile Specification.

Source: VerifyXML.java
Binary: VerifyXML.class
HTML Colorized Source


Click the link to visit the NVision Storefront and Purchase JShapeFile: JShapefile Product Information