⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queryandupdate.java.svn-base

📁 aresde 空间数据开发 例子
💻 SVN-BASE
字号:
import java.io.IOException;

import com.esri.arcgis.datasourcesGDB.SdeWorkspaceFactory;
import com.esri.arcgis.geodatabase.FeatureClass;
import com.esri.arcgis.geodatabase.FeatureCursor;
import com.esri.arcgis.geodatabase.IFeature;
import com.esri.arcgis.geodatabase.IFeatureClass;
import com.esri.arcgis.geodatabase.IFeatureClassEdit;
import com.esri.arcgis.geodatabase.IFeatureCursor;
import com.esri.arcgis.geodatabase.IFeatureDataset;
import com.esri.arcgis.geodatabase.IFeatureWorkspace;
import com.esri.arcgis.geodatabase.IQueryFilter;
import com.esri.arcgis.geodatabase.QueryFilter;
import com.esri.arcgis.geometry.IGeometryCollection;
import com.esri.arcgis.geometry.IPoint;
import com.esri.arcgis.geometry.IPointCollection;
import com.esri.arcgis.geometry.IPolyline;
import com.esri.arcgis.geometry.Path;
import com.esri.arcgis.geometry.Point;
import com.esri.arcgis.geometry.Polyline;
import com.esri.arcgis.system.AoInitialize;
import com.esri.arcgis.system.EngineInitializer;
import com.esri.arcgis.system.PropertySet;
import com.esri.arcgis.system.esriLicenseProductCode;


public class QueryAndUpdate {
	
	public static void query() throws Exception{
		com.esri.arcgis.system.PropertySet propSet = new PropertySet();
		
		//连接参数
		propSet.setProperty("SERVER", "192.168.1.220");
		propSet.setProperty("INSTANCE", "5151");
		//propSet.setProperty("DATABASE", "sde");
		propSet.setProperty("USER", "sde");
		propSet.setProperty("PASSWORD", "sde");
		propSet.setProperty("VERSION", "SDE.DEFAULT");
		
		SdeWorkspaceFactory swf=new SdeWorkspaceFactory();
		
		//连接SDE
		IFeatureWorkspace ifw=(IFeatureWorkspace)swf.open(propSet, 0);
		
		//IFeatureClass ifc=ifw.openFeatureClass("testFeatureClass2");
		FeatureClass ifc=new FeatureClass(ifw.openFeatureClass("SDE.S210000070_Disconnector_Layer"));
		
		
		IQueryFilter q= new QueryFilter();
		//查询条件
		q.setWhereClause("CIMID in ('221002902','221000610','221003063','221001766')");
		
		//search(IQueryFilter filter, boolean recycling)
		IFeatureCursor cursor=new FeatureCursor(ifc.update(q,false));
		
		IFeature f=cursor.nextFeature();
		
		while(f!=null){
			/**
			 * setValue(int index,Object value)
			 * index - 指定第几列.从0开始
			 * value - 赋值
			 * */
			//f.setValue(cursor.findField("DEVICETYPE"), null);
			
			/*IPoint from=new Point();
			IPoint to=new Point();
			from.setX(200);
			from.setY(200);
			to.setX(300);
			to.setY(300);
			
			IPolyline p=new Polyline();
			p.setFromPoint(from);
			p.setToPoint(to);*/
			
			/**
			 * 修改图形字段值
			 * */
			//f.setShapeByRef(p);
			//f.store();
			
			//cursor.updateFeature(f);
			System.out.println(f.getValue(cursor.findField("OBJECTID")));
			f=cursor.nextFeature();
		}

	}
	
	public static void main(String[] args) throws IOException{
		EngineInitializer.initializeEngine();
		final AoInitialize aoInit =new AoInitialize();
		try{
			aoInit.initialize(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB);
			
			query();
			
		}catch(Exception e){
			e.printStackTrace();
		}finally{
			aoInit.shutdown();
		}

	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -