1. 程式人生 > 實用技巧 >Java GDAL 環境配置

Java GDAL 環境配置

一、簡介

GDAL是柵格和向量地理空間資料格式的轉換器庫,開源地理空間基金會根據X / MIT樣式的開源許可證釋出作為一個庫,它為呼叫的應用程式提供了所有支援格式的單個柵格抽象資料模型和單個向量抽象資料模型。它還帶有用於資料轉換和處理的各種有用的命令列實用程式。新聞頁面描述2020年十月GDAL / OGR 3.2.0版本。

二、配置

1、下載編譯好的GDAL庫https://www.gisinternals.com/release.php,也可以自己原始碼編譯;

2、將路徑 \release-1911-x64-gdal-3-2-0-mapserver-7-6-1\bin 下的所有dll拷貝到jre目錄下,(鄙人的是C:\Program Files\Java\jdk1.8.0_151\jre\bin);

3、將路徑 \release-1911-x64-gdal-3-2-0-mapserver-7-6-1\bin\gdal\java下的gdalalljni.dll拷貝到步驟2的目錄下;

4、在專案中新增並引用\release-1911-x64-gdal-3-2-0-mapserver-7-6-1\bin\gdal\java下的jar和dll;

5、新建java程式寫程式碼除錯,引入gdal。

三、程式碼

import java.io.File;
import org.gdal.gdal.Band;
import org.gdal.gdal.Dataset;
import org.gdal.gdal.Driver;
import org.gdal.gdal.gdal; import org.gdal.gdalconst.gdalconstConstants; public class gdaltest { public void dog() { gdal.AllRegister(); String rasterFilePath ="F:\\傾斜攝影\\正射影像\\01可見光\\map\\result.tif";//測試用檔案路徑 Dataset dataset = gdal.Open(rasterFilePath, gdalconstConstants.GA_ReadOnly);
if (dataset == null) { System.out.println(gdal.GetLastErrorMsg()); } Driver driver = dataset.GetDriver(); System.out.println("driver short name: " + driver.getShortName()); System.out.println("driver long name: " + driver.getLongName()); System.out.println("metadata list: " + driver.GetMetadata_List()); String proj = dataset.GetProjection(); Band band = dataset.GetRasterBand(1); System.out.println(proj); System.out.println(band); } public static void main(String[] args) { gdaltest test = new gdaltest(); test.dog(); } }

四、結果