前言 在之前博客中,陆续的介绍了关于gdb文件的读取,gis利器之Gdal(三)gdb数据读取,玩转GDAL一文带你深入Windows下FileGDB驱动支持,这些文章主要都是介绍gdal的读取gdb以及简单的gdb文件
在之前博客中,陆续的介绍了关于gdb文件的读取,gis利器之Gdal(三)gdb数据读取,玩转GDAL一文带你深入Windows下FileGDB驱动支持,这些文章主要都是介绍gdal的读取gdb以及简单的gdb文件读写。在实际工作中gdb是一种丰富类型的数据库,可以记录许多的数据,一个gdb文件可以包含多个图层以及多个属性列表。本文将深度讲解如何使用Java语言,基于GDAL进行图层的写入,设置属性表的字段中文别名,通过实例的方式进行讲解,最后使用ArcMap进行空间信息和属性信息的验证。
示例工程采用Maven进行jar管理,因此需要在Pom.xml定义相关依赖。参考代码如下:
4.0.0 com.yelang gdal_demo1 0.0.1-SNAPSHOT gdal_demo1 gdal的第一次试验 UTF-8 1.8 1.8 org.gdal gdal 3.4.3 system ${project.basedir}/lib/gdal.jar net.sf.ucanaccess ucanaccess 4.0.4 junit junit 4.11 test
// 注册所有的驱动gdal.AllReGISter();// 为了支持中文路径,请添加下面这句代码gdal.SetConfiGoption("GDAL_FILENAME_IS_UTF8", "YES");// 为了使属性表字段支持中文,请添加下面这句gdal.SetConfigOption("SHAPE_ENcoding", "CP936");SpatialReference sr = new SpatialReference();sr.ImportFromEPSG(4326);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);
DataSource dataSourceGDB = oDriver.CreateDataSource(saveGdbPath);//gdb图层Layer gdbLayer = dataSourceGDB.CreateLayer("ZDXX", sr, ogr.wkbPolygon, null);
// 创建一个叫FeatureName的字符型属性,字符长度为50FieldDefn oFieldName = new FieldDefn("FieldName", ogr.OFTString);oFieldName.SetAlternativeName("要素类型");oFieldName.SetWidth(100);gdbLayer.CreateField(oFieldName, 1);
FeatureDefn oDefn =gdbLayer.GetLayerDefn();// 创建三角形要素Feature oFeatureTriangle = new Feature(oDefn);oFeatureTriangle.SetField(0, 0);oFeatureTriangle.SetField(1, "三角形");Geometry geomTriangle =Geometry.CreateFromWkt("POLYGON ((0 0,20 0,10 15,0 0))");oFeatureTriangle.SetGeometry(geomTriangle);gdbLayer.CreateFeature(oFeatureTriangle);
经过以上的一系列步骤,基本上完成gdb文件的生成测试,需要完整测试代码可以点击基于JAVA的GDAL生成gdb实例代码,下载后本地后,在确保环境配置无误的情况下,正常运行。
在生成目录,打开以gdb后缀结尾的文件夹,可以看到如下的文件(比较多,打开滚动条看更多)
使用ArcMap打开上述的gdb文件,验证文件是否可以正常打开,空间参考设置、属性设置、空间信息、属性别名是否已经正常写入等等。
以上就是本文的主要内容,本文将深度讲解如何使用Java语言,基于GDAL进行图层的写入,设置属性表的字段中文别名,通过实例的方式进行讲解,最后使用ArcMap进行空间信息和属性信息的验证。实验表明,gdb文件空间参考设置正确,属性信息和空间信息设置完成,通过ArcMap可以正常打开。
来源地址:https://blog.csdn.net/yelangkingwuzuhu/article/details/128269992
--结束END--
本文标题: 基于GDAL的JAVA生成GDB文件实战
本文链接: https://www.lsjlt.com/news/422306.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-01
2024-04-03
2024-04-03
2024-01-21
2024-01-21
2024-01-21
2024-01-21
2023-12-23
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0