2020.07.10
今日解决错误2;
第一个错误打开shp文件路径的问题,报错如下
解决办法:改一下读shp文件的方式,filepath只能写到shp文件的上一级目录如(F:\practice),在fileName里写具体的的shp文件名。
第二个错误:只读了filepath没有读入filename导致IGeoDataset值为 null报错,报“未将对象引用设置到对象的实例”的错误,总结了一下网上的经验,还是要注意报错的地方,看看局部变量窗口谁的值没有读入。
解决办法:将代码改为
string filepath = @"F:\practice";
string fileName = "three_gorges_reservoir.shp";
IWorkspaceFactory workspaceFactory = new ESRI.ArcGIS.DataSourcesFile.ShapefileWorkspaceFactoryClass();
IFeatureWorkspace pFeatureClass = (IFeatureWorkspace )workspaceFactory.OpenFromFile(filepath, 0);
IFeatureLayer pLayer = new FeatureLayerClass();
pLayer.FeatureClass = pFeatureClass.OpenFeatureClass(fileName );
运行后可以读入我的shp文件了。