Pom.xml定义
示例工程采用Maven进行jar管理,因此需要在Pom.xml定义相关依赖。参考代码如下:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.yelang</groupId>
<artifactId>gdal_demo1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>gdal_demo1</name>
<description>gdal的第一次试验</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.gdal</groupId>
<artifactId>gdal</artifactId>
<version>3.4.3</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gdal.jar</systemPath>
</dependency>
<dependency>
<groupId>net.sf.ucanaccess</groupId>
<artifactId>ucanaccess</artifactId>
<version>4.0.4</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
gdb驱动支持定义
// 注册所有的驱动
gdal.AllRegister();
// 为了支持中文路径,请添加下面这句代码
gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES");
// 为了使属性表字段支持中文,请添加下面这句
gdal.SetConfigOption("SHAPE_ENCODING", "CP936");
/*******************定义坐标系********************/
SpatialReference sr = new SpatialReference();
sr.ImportFromEPSG(4326);
/*******************输出gdb图层、表********************/
String saveGdbPath = "D:/creategdb/测试生成gdb1210.gdb";
org.gdal.ogr.Driver oDriver = ogr.GetDriverByName("FileGDB");
if (oDriver == null) {
System.out.println("FileGDB" + " 驱动不可用!\n");
return;
}
DataSource dataSourceGDB = oDriver.CreateDataSource(saveGdbPath);
创建gdb图层layer
DataSource dataSourceGDB = oDriver.CreateDataSource(saveGdbPath);
//gdb图层
Layer gdbLayer = dataSourceGDB.CreateLayer("ZDXX", sr, ogr.wkbPolygon, null);