#include "ogrsf_frmts.h"
int main()
{
OGRRegisterAll();
OGRDataSource *pogrDataSource = NULL;
OGRLayer *pogrLayer = NULL;
OGRFeature *pogrFeature = NULL;
OGRGeometry *pogrGeometry = NULL;
OGRFeatureDefn *pogrFeatureDefn = NULL;
OGRFieldDefn *pogrFieldDefn = NULL;
//const char* uri = "/home/hawk/data/gis/beijing/beijing_Pt.shp";
//const char* uri = "PG:dbname='GBSDE' host='127.0.0.1' port='5432' user='GBSDE' password='GBSDE'";
const char* uri = "OCI:GBSDE/GBSDE@oradb8";
const char* szLayerName = "CITIES";
pogrDataSource = OGRSFDriverRegistrar::Open(uri,FALSE);
if(pogrDataSource==NULL)
{
printf("open failed.\n");
exit(1);
}
pogrLayer = pogrDataSource->GetLayerByName(szLayerName);
pogrLayer->ResetReading();
while((pogrFeature=pogrLayer->GetNextFeature())!=NULL)
{
pogrFeatureDefn = pogrLayer->GetLayerDefn();
for(int i=0; i<pogrFeatureDefn->GetFieldCount(); i++)
{
pogrFieldDefn = pogrFeatureDefn->GetFieldDefn(i);
}
pogrGeometry = pogrFeature->GetGeometryRef();
if(pogrGeometry!=NULL)
{
printf("%s\n", pogrGeometry->exportToKML());
}
OGRFeature::DestroyFeature(pogrFeature);
}
OGRDataSource::DestroyDataSource(pogrDataSource);
}
分享到:
相关推荐
在导入SHP文件到Oracle Spatial时,通常会使用专门的数据转换工具,例如FME(Feature Manipulation Engine)、ArcGIS、QGIS或者 ogr2ogr,这些都是非常流行的GIS工具。以 ogr2ogr 为例,这是一个开源的GDAL库的一...
它可以读取和处理多种流行的矢量数据(如ESRI的Shapefile、S-57、SDTS、PostGIS、Oracle Spatial、以及Mapinfo的mid/mif和TAB格式),本文将讲解OGR库的安装、OGR的数据模型以及主要类的函数功能,最后将通过几个...
4. **分批次导入数据**:遍历Shapefile的数据集,逐个要素(Feature)读取其几何和属性信息,然后使用Oracle的INSERT语句将数据插入到数据库表中。由于Shapefile可能包含大量数据,建议分批次进行,以避免内存溢出或...
- 安装必要的软件:确保你已安装了Oracle数据库客户端、Oracle Spatial扩展以及一款能够读取和处理SHP文件的GIS工具,如QGIS或ArcGIS。 - 创建Oracle表:在Oracle数据库中创建一个新表,用于存储即将转换的空间...
总的来说,`shp2sdo`工具是GIS专业人员在处理Shapefile与Oracle Spatial数据交互时不可或缺的工具,它简化了数据转换的过程,提升了工作效率。在实际项目中,熟练掌握`shp2sdo`的使用能够帮助我们更好地管理和利用...
OGR 支持多种矢量数据格式,包括但不限于 ESRI Shapefile、S-57、SDTS、PostGIS、Oracle Spatial 以及 MapInfo 的 mid/mif 和 TAB 格式等。 #### 2. 安装指南 ##### 2.1 Windows 下的安装 1. **下载与解压**:...
7. **数据库支持**:GDAL/OGR可以与多种空间数据库进行交互,如PostGIS、SQLite、Oracle Spatial等。 8. **命令行工具**:GDAL附带了一系列实用的命令行工具,如`gdalinfo`、`gdal_translate`、`ogr2ogr`等,方便...
它支持多种矢量数据格式,包括ESRI的Shapefiles、S-57、SDTS、PostGIS、Oracle Spatial、MapInfo MID/MIF和MapInfo TAB等。OGR的体系结构包括了多个关键组件,如Geometry、SpatialReference、Feature、...
6. **数据库支持**:GDAL不仅支持读取文件格式,还能直接连接到各种GIS数据库,如PostGIS、Oracle Spatial、SQLite等。 7. **矢量化处理**:GDAL的OGR库支持矢量化数据的处理,可以进行要素的添加、删除、修改,...
它不仅支持读取常见的GIS数据格式,如ESRI的Shapefile、GeoTIFF、JPEG2000等,还支持多种数据库连接,如PostGIS、Oracle Spatial等。 这个Visual C++工程的源码包含了许多模块,如GDAL驱动程序、ogr(矢量数据处理...
7. **数据库连接**:GDAL可以连接多种GIS数据库,如PostGIS、Oracle Spatial等,进行数据的读取和写入。 标签“whl”表明这是一个Python的Wheel文件,它是Python的二进制包格式,包含了预编译的Python扩展模块,...
支持的数据格式包括 Arc/Info Binary Coverage、DWG、ESRI Personal GeoDatabase、ArcSDE、ESRIShapefile、GML、GRASS、Mapinfo File、Microstation DGN、ODBC、Oracle Spatial 和 PostgreSQL 等,基本包括了我们...
5. **数据库接口**:GDAL能够直接连接到多种GIS数据库,如PostGIS、Oracle Spatial等,方便地进行数据导入导出。 6. **GDAL/OGR命令行工具**:除了库形式的API,GDAL还提供了一系列的命令行工具,如gdal_translate...
1. **数据格式支持**:GDAL支持数十种地理空间数据格式,如TIFF、JPEG、PNG、GIF、GeoTIFF、ESRI Shapefile、GRASS、PostGIS、Oracle Spatial等,使得数据交换和操作变得灵活。 2. **读写能力**:GDAL不仅能够读取...
6. **数据库连接**:可以连接到多种GIS数据库,如PostGIS、Oracle Spatial等。 7. **栅格运算**:支持数学运算、统计分析、图像分类等高级功能。 8. **元数据管理**:提供元数据的读取和写入,有助于理解和处理...
8. **数据库连接**:GDAL可以连接到各种GIS数据库,如PostGIS、Oracle Spatial、SQLite等。 9. **网络服务接口**:支持WMS(Web Map Service)、WFS(Web Feature Service)等OGC标准。 10. **命令行工具**:GDAL...
开发者可能使用VC++的ODBC(Open Database Connectivity)或ADO(ActiveX Data Objects)来与各种数据库系统如PostgreSQL、MySQL、Oracle Spatial等进行交互,以读取、写入或更新GIS数据。 描述中的“VC打开数据库...
GDAL支持的数据格式包括但不限于:ESRI Shapefile、GeoTIFF、JPEG、PNG、PostGIS、Oracle Spatial、GRASS、MapInfo等。它通过统一的API,使得开发者能够轻松地处理不同格式的地理空间数据,而无需关心底层的具体实现...
6. **数据存储**:GeoTools不仅支持内存中的数据管理,还能够连接到各种数据库系统,如PostGIS、Oracle Spatial等,进行数据的存储和查询。 7. **栅格处理**:对于遥感影像和栅格数据,GeoTools提供了读取、裁剪、...
7. **数据库支持**:GDAL可以直接与多种GIS数据库交互,如Oracle Spatial、PostGIS、MySQL等。 8. **GDAL命令行工具**:除了库本身,GDAL还提供了一系列命令行工具,如gdalinfo、gdal_translate、ogr2ogr等,方便...