工具:vs2012+GDAL 2.0
数据:中国省界SHP文件bou2_4p.shp 可点击下载
包含头文件:
#include "ogrsf_frmts.h"
代码:
int main(){ GDALAllRegister();
GDALDataset *poDS;
CPLSetConfigOption("SHAPE_ENCODING",""); //解决中文乱码问题
//读取shp文件
poDS = (GDALDataset*) GDALOpenEx("d:/shapefile/bou2_4p.shp", GDAL_OF_VECTOR, NULL, NULL, NULL );
if( poDS == NULL )
{
printf( "Open failed.n%s" );
return 0;
}
OGRLayer *poLayer;
poLayer = poDS->GetLayer(0); //读取层
OGRFeature *poFeature;
poLayer->ResetReading();
int i=0;
while( (poFeature = poLayer->GetNextFeature()) != NULL )
{
if(poFeature->GetFieldAsDouble("AREA")<1) continue; //去掉面积过小的polygon
i=i++;
cout<<i<<" ";
OGRFeatureDefn *poFDefn = poLayer->GetLayerDefn();
int iField;
int n=poFDefn->GetFieldCount(); //获得字段的数目,不包括前两个字段(FID,Shape);
for( iField = 0; iField <n; iField++ )
{
//输出每个字段的值
cout<<poFeature->GetFieldAsString(iField)<<" ";
}
cout<<endl;
OGRFeature::DestroyFeature( poFeature );
}
GDALClose( poDS );
system("pause");
return 1;}
结果显示:
原文链接: https://www.cnblogs.com/denny402/p/4959867.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/224393
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!