C++ GDAL添加shpfile字段
2021/10/26 20:40:11
本文主要是介绍C++ GDAL添加shpfile字段,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#include <iostream> #include <ogrsf_frmts.h> #include <ctime> using namespace std; int main() { //支持中文路径 CPLSetConfigOption("GDAL_FILENAME_IS_UTF8", "NO"); //支持属相表中文字符 CPLGetConfigOption("SHAPE_ENCODING", "UTF-8"); //注册所有驱动 GDALAllRegister(); const char * shppath = "Supermarket.shp"; GDALDataset * ds = (GDALDataset *)GDALOpenEx(shppath, GDAL_OF_VECTOR and GDAL_OF_UPDATE, NULL, NULL, NULL); if (ds == NULL) { cout << "Failed to open shapefile!" << endl; return 0; } OGRLayer * lyr = ds->GetLayer(0); if (lyr == NULL) { cout << "Failed to get shape layer!" << endl; return 0; } OGRFieldDefn * fieldDefn = new OGRFieldDefn("money", OFTInteger); lyr->CreateField(fieldDefn); srand((int)time(NULL)); while (true) { OGRFeature * feature = lyr->GetNextFeature(); if (feature == NULL) { break; } int money = rand() % 100; feature->SetField("money", money); lyr->SetFeature(feature); OGRFeature::DestroyFeature(feature); } GDALClose(ds); cout << "finished!" << endl; return 0; }
这篇关于C++ GDAL添加shpfile字段的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享