<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_因是因非</title><subtitle type="text">像波希米亚人一样，漫游自然</subtitle><id>http://feed.cnblogs.com/blog/u/48612/rss</id><updated>2012-06-04T01:59:41Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/48612/rss"/><entry><id>http://www.cnblogs.com/myparamita/archive/2012/06/01/2530636.html</id><title type="text">ios程序上传app store过程总结</title><summary type="text">1 申请开发者帐号2 申请APP IDhttps://developer.apple.com/ios/manage/bundles/index.actionDescription：San ZhangBundle Identifier (App ID Suffix): cn.a.appname3 申请CSR钥匙串访问－证书助理－从证书颁发机构求证书填写注册开发账户时的邮箱和用户名，将CSR文件存储到磁盘。4 申请发布证书iOS provisioning portal-certificates-distribution-导入CSR文件－download－打开－在钥匙串访问中显示5 申请distri</summary><published>2012-06-01T05:48:00Z</published><updated>2012-06-01T05:48:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/06/01/2530636.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/06/01/2530636.html"/><content type="html">&lt;p&gt;&lt;strong&gt;1 申请开发者帐号&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;2 申请APP ID&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="https://developer.apple.com/ios/manage/bundles/index.action"&gt;https://developer.apple.com/ios/manage/bundles/index.action&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Description：San Zhang&lt;/p&gt;&lt;p&gt;Bundle Identifier (App ID Suffix): cn.a.appname&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;3 申请CSR&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;钥匙串访问－证书助理－从证书颁发机构求证书&lt;/p&gt;&lt;p&gt;填写注册开发账户时的邮箱和用户名，将CSR文件存储到磁盘。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;4 申请发布证书&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;iOS provisioning portal-certificates-distribution-导入CSR文件－download－打开－在钥匙串访问中显示&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;5 申请distribution provisioning&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;iOS provisioning portal－provisioning－distribution－add new－submit－download－打开－自动关联&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;6 itunes connect中新增app，填写相关信息。&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;7 代码中新增Entitlements.plist文件&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;内容为：&lt;/p&gt;&lt;p&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;plist version="1.0"&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;dict&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;key&amp;gt;application-identifier&amp;lt;/key&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;string&amp;gt;Z3VJF32UKJ.cn.a.appname&amp;lt;/string&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;key&amp;gt;get-task-allow&amp;lt;/key&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;false/&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;/dict&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;/plist&amp;gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;8 修改resource下的plist文件&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Bundle identifier：cn.a.appname&lt;/p&gt;&lt;p&gt;&lt;strong&gt;9 配置xcode&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;项目－get info－configurations中新增distribution配置项。&lt;/p&gt;&lt;p&gt;Build选项－configuration选择为distribution－修改codesigning identify和any iphone os device为distribution证书。Targeted device family为iphone。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Target中－get info－做同上设置&lt;/p&gt;&lt;p&gt;&lt;strong&gt;10 clean，build and archive。&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;注意：文件目录层次不要太深。文件名长度进行控制。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;11 打开xcode－organizer－archived applications－选择编译程序，validate－submit&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2530636.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/06/01/2530636.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/04/16/2451914.html</id><title type="text">html中不缓存swf的方法</title><summary type="text">1 IIS中网站属性--HTTP头--启用内容过期2 swf所在的html head中添加 &lt;META HTTP-EQUIV="pragma" CONTENT="no-cache"&gt; &lt;META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"&gt; &lt;META HTTP-EQUIV="expires" CONTENT="0"&gt;参考：swf 更新后，客户端不需要清空缓存</summary><published>2012-04-16T08:15:00Z</published><updated>2012-04-16T08:15:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/04/16/2451914.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/04/16/2451914.html"/><content type="html">&lt;p&gt;1 IIS中网站属性--HTTP头--启用内容过期&lt;/p&gt;&lt;p&gt;2 swf所在的html head中添加&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;lt;META HTTP-EQUIV="pragma" CONTENT="no-cache"&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;META HTTP-EQUIV="expires" CONTENT="0"&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;参考：&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;a href="http://huagenli.iteye.com/blog/1452295"&gt;swf 更新后，客户端不需要清空缓存即可查看最新版本&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2451914.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/04/16/2451914.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/21/2361346.html</id><title type="text">ArcGIS Server for Flex 常用代码</title><summary type="text">java将json格式的xy值转为点对象 1 private IGeometry getGeometryFromXYs(String xys) { 2 IGeometry geo = null; 3 try { 4 if (xys == null) 5 return null; 6 JSONArray jsonArray = new JSONArray(xys); 7 int count = jsonArray.length(); 8 ...</summary><published>2012-02-21T07:07:00Z</published><updated>2012-02-21T07:07:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/21/2361346.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/21/2361346.html"/><content type="html">&lt;p&gt;java&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('e0b58928-e7dd-4098-81ee-9ade8edecdaf')"&gt;&lt;div id="cnblogs_code_open_e0b58928-e7dd-4098-81ee-9ade8edecdaf" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; IGeometry getGeometryFromXYs(String xys) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         IGeometry geo = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (xys == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             JSONArray jsonArray = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; JSONArray(xys);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; count = jsonArray.length();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (count &amp;lt; 1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (count == 1) { &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; point&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                     JSONObject jo = jsonArray.getJSONObject(0);&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                     Point p = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Point();&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                     p.setX(jo.getDouble("x"));&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                     p.setY(jo.getDouble("y"));&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; (IGeometry) p;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                 } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (AutomationException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                     e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                 } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IOException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                     e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = 0; i &amp;lt; jsonArray.length(); i++) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                 System.out.println("item " + i + " :" + jsonArray.getString(i));&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (JSONException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;     }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('428b4c63-4550-4ce0-a3d9-a83619dd8649')"&gt;&lt;div id="cnblogs_code_open_428b4c63-4550-4ce0-a3d9-a83619dd8649" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; initServer() {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #008000;"&gt;/**&lt;/span&gt;&lt;span style="color: #008000;"&gt; * 连接到ArcGIS Sever &lt;/span&gt;&lt;span style="color: #008000;"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; ServerInitializer().initializeServer(domain, user, password);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             conn = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; ServerConnection();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             conn.connect(host);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             som = conn.getServerObjectManager();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             serverContext = som.createServerContext(servicesName, "MapServer");&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             mapserver = (MapServer) serverContext.getServerObject();&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             maps = mapserver.getMap(mapserver.getDefaultMapName());&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             System.out.print("已连接到ArcGIS Sever");&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (Exception e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             mapserver = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             maps = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             som = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;     }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('2bde8640-2b3e-46d3-9e60-aa1ef4e31b54')"&gt;&lt;div id="cnblogs_code_open_2bde8640-2b3e-46d3-9e60-aa1ef4e31b54" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;     &lt;span style="color: #008000;"&gt;/*&lt;/span&gt;&lt;span style="color: #008000;"&gt; &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #008000;"&gt;     * 执行添加feature的操作&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #008000;"&gt;     *  tablename:表名&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #008000;"&gt;     *  map：待保存的feature各属性键值对&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #008000;"&gt;     *  geo：待保存的feature的geometry  &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; &lt;span style="color: #008000;"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;boolean&lt;/span&gt; StoreFeature(String tablename, Map&amp;lt;String, String&amp;gt; map,&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IGeometry geo) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 先判断Server的连接状态&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (maps == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || mapserver == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || som == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 || serverContext == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;.initServer();&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (maps == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || mapserver == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || som == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 || serverContext == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             System.out.print("不能连接到ArcGIS Server!");&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             IFeatureLayer pFeatLayer = (IFeatureLayer) serverContext&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                     .createObject(FeatureLayer.getClsid());&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             pFeatLayer = getFeatureLayer(maps, tablename);&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             IFeatureClass pfeatureclass = pFeatLayer.getFeatureClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             geo.setSpatialReferenceByRef(maps.getSpatialReference());&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             IDataset dataset = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; IDatasetProxy(pfeatureclass);&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; begin edit&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;             IWorkspaceEdit pWorkspaceEdit = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; IWorkspaceEditProxy(dataset&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                     .getWorkspace());&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;             pWorkspaceEdit.startEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;             pWorkspaceEdit.startEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; set field value&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;             IFeatureBuffer featureBuffer = pfeatureclass.createFeatureBuffer();&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;             IFeatureCursor featureCursor = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FeatureCursor(pfeatureclass&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                     .IFeatureClass_insert(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;));&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;             featureBuffer.setShapeByRef(geo);&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (map != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (Object o : map.keySet()) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;                     String field = String.valueOf(o);&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; index = featureBuffer.getFields().findField(field);&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (index &amp;gt;= 0) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;                         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; do not store objectid&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (field.indexOf("OBJECTID") == -1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;                             featureBuffer.setValue(featureBuffer.getFields()&lt;br /&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;                                     .findField(field), map.get(o));&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt;                         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt;                     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;             featureCursor.insertFeature(featureBuffer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;             featureCursor.flush();&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;             pWorkspaceEdit.stopEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;55&lt;/span&gt;             pWorkspaceEdit.stopEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;56&lt;/span&gt;             System.out.print("\n已添加！");&lt;br /&gt;&lt;span style="color: #008080;"&gt;57&lt;/span&gt;             Cleaner.release(featureBuffer);&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; release Point of AO&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;58&lt;/span&gt;             mapserver.refreshServerObjects();&lt;br /&gt;&lt;span style="color: #008080;"&gt;59&lt;/span&gt;             serverContext.releaseContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;60&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (Exception e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;61&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;62&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;63&lt;/span&gt;                 mapserver.refreshServerObjects();&lt;br /&gt;&lt;span style="color: #008080;"&gt;64&lt;/span&gt;                 serverContext.releaseContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;65&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (AutomationException e1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;66&lt;/span&gt;                 e1.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;67&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IOException e1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;68&lt;/span&gt;                 e1.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;69&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;finally&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;70&lt;/span&gt;                 mapserver = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;71&lt;/span&gt;                 maps = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;72&lt;/span&gt;                 som = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;73&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;74&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;75&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;76&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;77&lt;/span&gt;     }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('1455dcdc-3784-4d85-950e-3773690ed39b')"&gt;&lt;div id="cnblogs_code_open_1455dcdc-3784-4d85-950e-3773690ed39b" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;delete single feature&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;boolean&lt;/span&gt; deleteFeature(String tablename,&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; id ){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 先判断Server的连接状态&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (maps == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || mapserver == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || som == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                 || serverContext == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;.initServer();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (maps == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || mapserver == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || som == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                 || serverContext == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             System.out.print("不能连接到ArcGIS Server!");&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             IFeatureLayer pFeatLayer = (IFeatureLayer) serverContext&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                     .createObject(FeatureLayer.getClsid());&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             pFeatLayer = getFeatureLayer(maps, tablename);&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             IFeatureClass pfeatureclass = pFeatLayer.getFeatureClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             IDataset dataset = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; IDatasetProxy(pfeatureclass);&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; begin edit&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             IWorkspaceEdit pWorkspaceEdit = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; IWorkspaceEditProxy(dataset&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                     .getWorkspace());&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             pWorkspaceEdit.startEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             pWorkspaceEdit.startEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;             IFeature feature=pfeatureclass.getFeature(id);&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(feature!=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                 feature.delete();&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;             pWorkspaceEdit.stopEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;             pWorkspaceEdit.stopEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;             System.out.print("\n已删除！");&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;             mapserver.refreshServerObjects();&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;             serverContext.releaseContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (Exception e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                 mapserver.refreshServerObjects();&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;                 serverContext.releaseContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (AutomationException e1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; TODO Auto-generated catch block&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;                 e1.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IOException e1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; TODO Auto-generated catch block&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;                 e1.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;finally&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;                 mapserver = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;                 maps = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt;                 som = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;     }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('c641d390-94f7-4c30-9731-a8b297206bb5')"&gt;&lt;div id="cnblogs_code_open_c641d390-94f7-4c30-9731-a8b297206bb5" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;update fields(without geometry)&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;boolean&lt;/span&gt; updateFields(String tablename,&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; id,Map&amp;lt;String, String&amp;gt; map){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 先判断Server的连接状态&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (maps == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || mapserver == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || som == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                 || serverContext == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;.initServer();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (maps == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || mapserver == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || som == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                 || serverContext == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; || conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             System.out.print("不能连接到ArcGIS Server!");&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             IFeatureLayer pFeatLayer = (IFeatureLayer) serverContext&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             .createObject(FeatureLayer.getClsid());&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             pFeatLayer = getFeatureLayer(maps, tablename);&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             IFeatureClass pfeatureclass = pFeatLayer.getFeatureClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             IDataset dataset = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; IDatasetProxy(pfeatureclass);&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; begin edit&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             IWorkspaceEdit pWorkspaceEdit = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; IWorkspaceEditProxy(dataset&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                     .getWorkspace());&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             pWorkspaceEdit.startEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             pWorkspaceEdit.startEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;             IFeature feature=pfeatureclass.getFeature(id);&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (map != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (Object o : map.keySet()) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                     String field = String.valueOf(o);&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; index = feature.getFields().findField(field);&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (index &amp;gt;= 0) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;                         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; do not store objectid&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (field.indexOf("OBJECTID") == -1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                             feature.setValue(feature.getFields()&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;                                     .findField(field), map.get(o));&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;             feature.store();&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;             pWorkspaceEdit.stopEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;             pWorkspaceEdit.stopEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;             System.out.print("\n操作成功！");&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;             mapserver.refreshServerObjects();&lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;             serverContext.releaseContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (Exception e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt;                 mapserver.refreshServerObjects();&lt;br /&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;                 serverContext.releaseContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (AutomationException e1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; TODO Auto-generated catch block&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;                 e1.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IOException e1) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;55&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; TODO Auto-generated catch block&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;56&lt;/span&gt;                 e1.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;57&lt;/span&gt;             } &lt;span style="color: #0000ff;"&gt;finally&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;58&lt;/span&gt;                 mapserver = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;59&lt;/span&gt;                 maps = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;60&lt;/span&gt;                 som = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;61&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;62&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;63&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;64&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;65&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;66&lt;/span&gt;     }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;flex&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('6dc60ea6-77de-46a7-a39c-01da08e4d918')"&gt;&lt;div id="cnblogs_code_open_6dc60ea6-77de-46a7-a39c-01da08e4d918" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;get N * size extent from geometry&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; getNExtentFromGeo(geo:Geometry,n:&lt;span style="color: #0000ff;"&gt;Number&lt;/span&gt;):Extent{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; extent:Extent=getExtentFromGeo(geo);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; newExtent:Extent=new Extent();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             newExtent.xmax=extent.xmax+extent.width*(n-1)/2;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             newExtent.xmin=extent.xmin-extent.width*(n-1)/2;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             newExtent.ymax=extent.ymax+extent.height*(n-1)/2;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             newExtent.ymin=extent.ymin-extent.height*(n-1)/2;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; newExtent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('03d059ae-87ca-4ab5-ae4c-7b28bb0478a6')"&gt;&lt;div id="cnblogs_code_open_03d059ae-87ca-4ab5-ae4c-7b28bb0478a6" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;get extent from geometry&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; getBuffExtentOfPoint(point:MapPoint,buffer:&lt;span style="color: #0000ff;"&gt;Number&lt;/span&gt;):Extent{&lt;br /&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; extent:Extent=new Extent(point.x-buffer,point.y-buffer,point.x+buffer,point.y+buffer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; extent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('344c9cb2-748f-4901-8a54-89fae3ae8176')"&gt;&lt;div id="cnblogs_code_open_344c9cb2-748f-4901-8a54-89fae3ae8176" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;get extent from geometry&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; getExtentFromGeo(geo:Geometry):Extent{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; extent:Extent=new Extent();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;switch&lt;/span&gt; (geo.type) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.MAPPOINT: {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;                     extent=getBuffExtentOfPoint(geo as MapPoint,0.01);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.POLYLINE: {&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; polyline:Polyline=geo as Polyline;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                     extent=polyline.extent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.POLYGON: {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; poly:Polygon=geo as Polygon;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                     extent=poly.extent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; extent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('dcacd976-1c01-4101-89a3-4592d51042c5')"&gt;&lt;div id="cnblogs_code_open_dcacd976-1c01-4101-89a3-4592d51042c5" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;get graphicslayer's extent&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; getGraphicsExtent(graphicsLayer:GraphicsLayer):Extent{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; extent:Extent=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; tempExtent:Extent=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; graphic:Graphic=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; geo:Geometry=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; i:int=0;i&amp;lt;graphicsLayer.numGraphics;i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                 graphic=Graphic(graphicsLayer.getChildAt(i));&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 geo=graphic.geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                 tempExtent=getNExtentFromGeo2(geo,10);&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(extent==&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;){&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                     extent=tempExtent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;{&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                     extent=extent.union(tempExtent);&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; extent;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('907bf372-2217-44a5-a17a-b04a7e3ab7f1')"&gt;&lt;div id="cnblogs_code_open_907bf372-2217-44a5-a17a-b04a7e3ab7f1" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;得到几何对象的中心点&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; getGeomCenter(geom:Geometry):MapPoint&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; pt:MapPoint;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;switch&lt;/span&gt; (geom.type)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;                {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.MAPPOINT:&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;                     pt = geom as MapPoint;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                &lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.POLYLINE:&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                        &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; pl:Polyline = geom as Polyline;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                        pt = pl.extent.center;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                        &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(pl.paths != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; pl.paths.length&amp;gt;0){&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                            &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; path:Array = pl.paths[0];&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                            &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(path != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; path.length &amp;gt; 0){&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; mid:int = path.length/2;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                                pt = path[mid];&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                                &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(path.length == 2){ &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; path里面只有两个点的情况&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                                    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;pt.x = pl.getPoint(0,path[0]).x;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                                    &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; x1:&lt;span style="color: #0000ff;"&gt;Number&lt;/span&gt; = (path[0] as MapPoint).x;&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;                                    &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; y1:&lt;span style="color: #0000ff;"&gt;Number&lt;/span&gt; = (path[0] as MapPoint).y;&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;                                    &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; x2:&lt;span style="color: #0000ff;"&gt;Number&lt;/span&gt; = (path[1] as MapPoint).x;&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                                    &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; y2:&lt;span style="color: #0000ff;"&gt;Number&lt;/span&gt; = (path[1] as MapPoint).y;                                   &lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                                    pt.x =  x2 + (x1 - x2)/2 ;&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                                 pt.y = y2 + (y1 - y2)/2;&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                            }&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;                        }&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;                        &lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;pl.getPoint(pl.paths[0],pl.paths[0][]);&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                &lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.POLYGON:&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;                {&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; poly:Polygon = geom as Polygon;&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;                        pt = poly.extent.center;&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; pt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('a29a85d8-92a8-4229-9c6c-9e5d30b924ae')"&gt;&lt;div id="cnblogs_code_open_a29a85d8-92a8-4229-9c6c-9e5d30b924ae" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;根据包含坐标的json字符串生成几何对象&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; getGeoFromXYs(xys:&lt;span style="color: #0000ff;"&gt;String&lt;/span&gt;):Geometry{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; geo:Geometry=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;对xys进行解析,转换为geometry&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; data:&lt;span style="color: #0000ff;"&gt;String&lt;/span&gt; = xys.replace( /\s/g, '' ); &lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; collection:ArrayCollection = new ArrayCollection(JSON.decode(data) as Array);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;               &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; count:int=collection.length;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;               &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(count&amp;lt;1){ &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;no xy information&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                   Alert.show("无坐标信息！");&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;               }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(count==1){    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;point&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;               &lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point:MapPoint=new MapPoint(collection[0].x,collection[0].y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 geo=point as Geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;               }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(count&amp;gt;1){&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(collection[0].x==collection[count-1].x &amp;amp;&amp;amp; collection[0].y==collection[count-1].y ){ &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;polygon&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; paths:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; path:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; i:int=0;i&amp;lt;=count-1;i++){&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                           &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; p:MapPoint=new MapPoint(collection[i].x,collection[i].y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                           path.push(p);&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                       }&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                       paths.push(path);&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; po:Polygon=new Polygon(paths,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;                       geo=po as Geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                   }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;{    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;line&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; paths:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; path:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; i:int=0;i&amp;lt;=count-1;i++){&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                           &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; p:MapPoint=new MapPoint(collection[i].x,collection[i].y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;                           path.push(p);&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;                       }&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                       paths.push(path);&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; line:Polyline=new Polyline(paths,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                       geo=line as Geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                   }&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;               }&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; geo;&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('4bb8008a-815b-418a-8d80-a3f484c4a393')"&gt;&lt;div id="cnblogs_code_open_4bb8008a-815b-418a-8d80-a3f484c4a393" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;add graphics from jsonString&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; addGraphicsFromJsonString(glayer:GraphicsLayer,jsonString:&lt;span style="color: #0000ff;"&gt;String&lt;/span&gt;):void{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; data:&lt;span style="color: #0000ff;"&gt;String&lt;/span&gt; = jsonString.replace( /\s/g, '' ); &lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; obj:&lt;span style="color: #0000ff;"&gt;Object&lt;/span&gt; = JSON.decode(data) as &lt;span style="color: #0000ff;"&gt;Object&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; tableName:&lt;span style="color: #0000ff;"&gt;String&lt;/span&gt;=obj.tablename;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;tablename&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; type:int=obj.type;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;0:point 1:polyline 2:polygon&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; id:int=obj.id;        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; polyline||polygon 's id&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; xys:Array=obj.geodata;    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;xy json array&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; count:int=xys.length;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; i:int=0;    &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; geo:Geometry=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;    &lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; graphic:Graphic=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; infoData:&lt;span style="color: #0000ff;"&gt;Object&lt;/span&gt; =&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;store info data&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(type==0){&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;points&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(i=0;i&amp;lt;count;i++){&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point:MapPoint=new MapPoint(xys[i].x,xys[i].y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                     geo=point as Geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                     graphic=getGraphicFromGeo(geo);&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                     infoData = &lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                     {&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                         tablename: tableName,&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                         id:xys[i].id&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;                     }; &lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;                     graphic.attributes=infoData;&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                     glayer.add(graphic);&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;             }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(type==1){&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;polyline&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; paths:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; path:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(i=0;i&amp;lt;=count-1;i++){&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; p:MapPoint=new MapPoint(xys[i].x,xys[i].y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                       path.push(p);&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;                   }&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                   paths.push(path);&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; polyline:Polyline=new Polyline(paths,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;                   geo=polyline as Geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;                       &lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;                   infoData = &lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;                     tablename: tableName,&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                     id:id&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;                 };     &lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;                   graphic=getGraphicFromGeo(geo);&lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;                 graphic.attributes=infoData;&lt;br /&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;                 glayer.add(graphic);&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt;             }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(type==2){&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;polygon&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; paths1:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; path1:Array=new Array();&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(i=0;i&amp;lt;=count-1;i++){&lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;                       &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; p1:MapPoint=new MapPoint(xys[i].x,xys[i].y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;                       path1.push(p1);&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;                   }&lt;br /&gt;&lt;span style="color: #008080;"&gt;55&lt;/span&gt;                   paths1.push(path1);&lt;br /&gt;&lt;span style="color: #008080;"&gt;56&lt;/span&gt;                   &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; polygon:Polygon=new Polygon(paths1,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;57&lt;/span&gt;                   geo=polygon as Geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;58&lt;/span&gt;                       &lt;br /&gt;&lt;span style="color: #008080;"&gt;59&lt;/span&gt;                   infoData = &lt;br /&gt;&lt;span style="color: #008080;"&gt;60&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;61&lt;/span&gt;                     tablename: tableName,&lt;br /&gt;&lt;span style="color: #008080;"&gt;62&lt;/span&gt;                     id:id&lt;br /&gt;&lt;span style="color: #008080;"&gt;63&lt;/span&gt;                 };     &lt;br /&gt;&lt;span style="color: #008080;"&gt;64&lt;/span&gt;                   graphic=getGraphicFromGeo(geo);&lt;br /&gt;&lt;span style="color: #008080;"&gt;65&lt;/span&gt;                 graphic.attributes=infoData;&lt;br /&gt;&lt;span style="color: #008080;"&gt;66&lt;/span&gt;                 glayer.add(graphic);&lt;br /&gt;&lt;span style="color: #008080;"&gt;67&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;68&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('b41ac8a4-86f9-4eda-9c58-fce2952d64e8')"&gt;&lt;div id="cnblogs_code_open_b41ac8a4-86f9-4eda-9c58-fce2952d64e8" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;根据几何对象生成渲染后的图形&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;  getGraphicFromGeo(geo:Geometry):Graphic{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; sls:SimpleLineSymbol = new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, 0xFF0000, 0.8,4);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; sms:SimpleMarkerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CIRCLE, 30, 0xFF0000, 0.5);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; sfs:SimpleFillSymbol = new SimpleFillSymbol(SimpleFillSymbol.STYLE_SOLID, 0xFF0000, 0.1);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;              sfs.outline = new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, 0xFF0000, 1.0, 2);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; g:Graphic=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;switch&lt;/span&gt; (geo.type)&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                {&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.MAPPOINT: {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                        g=new Graphic(geo,sms,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.POLYLINE: {&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                        g=new Graphic(geo,sls,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;case&lt;/span&gt; Geometry.POLYGON: {&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                        g=new Graphic(geo,sfs,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                        &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; g;&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('fff2d684-c7eb-4535-9062-a26378e62c0b')"&gt;&lt;div id="cnblogs_code_open_fff2d684-c7eb-4535-9062-a26378e62c0b" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;query graphic by point&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; queryGraphicByPoint(graphicsLayer:GraphicsLayer,point:MapPoint): Graphic {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; extent:Extent = getBuffExtentOfPoint(point,0.02);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; graphic: Graphic= &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; geo:Geometry=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; tempExtent:Extent=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; i:int=0;i&amp;lt;graphicsLayer.numGraphics;i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                 graphic=Graphic(graphicsLayer.getChildAt(i));&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 geo=graphic.geometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                 tempExtent=getNExtentFromGeo(geo,3);&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(ifTwoExtentsIntersect(extent,tempExtent)){&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; graphic;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;        }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('68194266-9d8d-4ede-aa39-d3522aa4fdad')"&gt;&lt;div id="cnblogs_code_open_68194266-9d8d-4ede-aa39-d3522aa4fdad" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;judge if two extents intersect&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;        &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; ifTwoExtentsIntersect(extent1:Extent,extent2:Extent):&lt;span style="color: #0000ff;"&gt;Boolean&lt;/span&gt;{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;                &lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point11:MapPoint=new MapPoint(extent1.xmin,extent1.ymin,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point12:MapPoint=new MapPoint(extent1.xmax,extent1.ymin,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point13:MapPoint=new MapPoint(extent1.xmin,extent1.ymax,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point14:MapPoint=new MapPoint(extent1.xmax,extent1.ymax,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point21:MapPoint=new MapPoint(extent2.xmin,extent2.ymin,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point22:MapPoint=new MapPoint(extent2.xmax,extent2.ymin,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point23:MapPoint=new MapPoint(extent2.xmin,extent2.ymax,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; point24:MapPoint=new MapPoint(extent2.xmax,extent2.ymax,&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;( ifPointInExtent(point11,extent2)||ifPointInExtent(point12,extent2)||&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                    ifPointInExtent(point13,extent2)||ifPointInExtent(point14,extent2)||&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 ifPointInExtent(point21,extent1)||ifPointInExtent(point22,extent1)||&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                    ifPointInExtent(point23,extent1)||ifPointInExtent(point24,extent1)){&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                    &lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                    &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                &lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;        }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('eeca0a32-fd40-4170-b6e4-00b39bdb1ac0')"&gt;&lt;div id="cnblogs_code_open_eeca0a32-fd40-4170-b6e4-00b39bdb1ac0" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt;        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;judge if point in extent&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt;        &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; ifPointInExtent(point:MapPoint,extent:Extent):&lt;span style="color: #0000ff;"&gt;Boolean&lt;/span&gt;{&lt;br /&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt;                &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Alert.show("point.x="+point.x+"extent.xmax="+extent.xmax+"extent.xmin="+extent.xmin+&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt;                &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;"point.y="+point.y+"extent.ymax="+extent.ymax+"extent.ymin="+extent.ymin);&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(point.x&amp;lt;extent.xmax&amp;amp;&amp;amp;point.x&amp;gt;extent.xmin&amp;amp;&amp;amp;point.y&amp;lt;extent.ymax&amp;amp;&amp;amp;point.y&amp;gt;extent.ymin){&lt;br /&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt;                    &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;7&lt;/span&gt;                }&lt;br /&gt;&lt;span style="color: #008080;"&gt;8&lt;/span&gt;                &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;9&lt;/span&gt;        }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;end&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2361346.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/21/2361346.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/21/2361273.html</id><title type="text">java 数据库读取工具类（读取config.properties配置文件）</title><summary type="text">数据库读取工具类 1 package com.db; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.SQLException; 6 import oracle.jdbc.driver.OracleDriver; 7 8 import javax.naming.Context; 9 import javax.naming.InitialContext; 10 import javax.naming.NamingException; 11 import ja...</summary><published>2012-02-21T06:39:00Z</published><updated>2012-02-21T06:39:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/21/2361273.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/21/2361273.html"/><content type="html">&lt;p&gt;数据库读取工具类&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt;  1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;package&lt;/span&gt; com.db;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  2&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;  3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.sql.Connection;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  4&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.sql.DriverManager;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  5&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.sql.SQLException;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  6&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; oracle.jdbc.driver.OracleDriver;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  7&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;  8&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; javax.naming.Context;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  9&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; javax.naming.InitialContext;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 10&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; javax.naming.NamingException;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 11&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; javax.sql.DataSource;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 12&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 13&lt;/span&gt; &lt;span style="color: #008000;"&gt;/**&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 14&lt;/span&gt; &lt;span style="color: #008000;"&gt;* 数据库连接工具类&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 15&lt;/span&gt; &lt;span style="color: #008000;"&gt;* &lt;/span&gt;&lt;span style="color: #808080;"&gt;@version&lt;/span&gt;&lt;span style="color: #008000;"&gt; 1.0&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 16&lt;/span&gt; &lt;span style="color: #008000;"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 17&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; JdbcConnection {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 18&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt; 19&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 定义线程本地变量，每个线程访问它都会获得不同的对象&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 20&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 使用ThreadLocal使一个连接绑定到一个线程上&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 21&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; ThreadLocal&amp;lt;Connection&amp;gt; currentConnection = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; ThreadLocal&amp;lt;Connection&amp;gt;();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 22&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; String username=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;            &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;用户名&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 23&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; String password=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;            &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;密码&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 24&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; String dbName=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;                &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;数据库名称&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 25&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; String ip=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;                        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;数据库服务器IP地址&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 26&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; String resourceName=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;                                        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;为null时不使用连接池， jdbc/mysql或jdbc/oracle或jdbc/derby&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 27&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; String databaseType = "oracle";    &lt;br /&gt;&lt;span style="color: #008080;"&gt; 28&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt; 29&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; initParams(){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 30&lt;/span&gt;       username=DbConfig.getInstance().getDb_username();            &lt;br /&gt;&lt;span style="color: #008080;"&gt; 31&lt;/span&gt;       password=DbConfig.getInstance().getDb_password();            &lt;br /&gt;&lt;span style="color: #008080;"&gt; 32&lt;/span&gt;       dbName=DbConfig.getInstance().getDb_name();                &lt;br /&gt;&lt;span style="color: #008080;"&gt; 33&lt;/span&gt;       ip=DbConfig.getInstance().getIp();                        &lt;br /&gt;&lt;span style="color: #008080;"&gt; 34&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 35&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt; 36&lt;/span&gt;     &lt;span style="color: #008000;"&gt;/**&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 37&lt;/span&gt; &lt;span style="color: #008000;"&gt;     * &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 38&lt;/span&gt; &lt;span style="color: #008000;"&gt;     * &lt;/span&gt;&lt;span style="color: #808080;"&gt;@return&lt;/span&gt;&lt;span style="color: #008000;"&gt; 得到一个数据库连接&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 39&lt;/span&gt; &lt;span style="color: #008000;"&gt;     * &lt;/span&gt;&lt;span style="color: #808080;"&gt;@throws&lt;/span&gt;&lt;span style="color: #008000;"&gt; SQLException&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 40&lt;/span&gt; &lt;span style="color: #008000;"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 41&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Connection getConnection() &lt;span style="color: #0000ff;"&gt;throws&lt;/span&gt; SQLException {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 42&lt;/span&gt;         Connection conn = currentConnection.get();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 43&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (conn == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 44&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;==resourceName){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 45&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;("mysql".equals(databaseType.toLowerCase())){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 46&lt;/span&gt;                     conn = getMySqlConnection();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 47&lt;/span&gt;                 }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;("oracle".equals(databaseType.toLowerCase())){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 48&lt;/span&gt;                     conn = getOracleConnection();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 49&lt;/span&gt;                 }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;("derby".equals(databaseType.toLowerCase())){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 50&lt;/span&gt;                     conn = getDerbyConnection();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 51&lt;/span&gt;                 }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 52&lt;/span&gt;                     System.out.println("在 JdbcConnection.java 中数据库类型没有设置");&lt;br /&gt;&lt;span style="color: #008080;"&gt; 53&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;throw&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; SQLException("数据库类型未设置");&lt;br /&gt;&lt;span style="color: #008080;"&gt; 54&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 55&lt;/span&gt;             }&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 56&lt;/span&gt;                 conn = getConnectionByPool();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 57&lt;/span&gt;             }            &lt;br /&gt;&lt;span style="color: #008080;"&gt; 58&lt;/span&gt;             currentConnection.set(conn);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 59&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 60&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; conn;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 61&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 62&lt;/span&gt;     &lt;span style="color: #008000;"&gt;/**&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 63&lt;/span&gt; &lt;span style="color: #008000;"&gt;     * 关闭Oracle数据库连接&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 64&lt;/span&gt; &lt;span style="color: #008000;"&gt;     * &lt;/span&gt;&lt;span style="color: #808080;"&gt;@throws&lt;/span&gt;&lt;span style="color: #008000;"&gt; SQLException&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 65&lt;/span&gt; &lt;span style="color: #008000;"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 66&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; closeConnection() &lt;span style="color: #0000ff;"&gt;throws&lt;/span&gt; SQLException{&lt;br /&gt;&lt;span style="color: #008080;"&gt; 67&lt;/span&gt;         Connection conn = currentConnection.get();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 68&lt;/span&gt;         conn.close();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 69&lt;/span&gt;         currentConnection.set(&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 70&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 71&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;获得Oracle数据库连接&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 72&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Connection getOracleConnection(){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 73&lt;/span&gt;         initParams();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 74&lt;/span&gt;         Connection conn = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 75&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 76&lt;/span&gt;             Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;加载驱动&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 77&lt;/span&gt;             conn= DriverManager.getConnection("jdbc:oracle:thin:@"+ip+":1521:"+dbName,username,password);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 78&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (ClassNotFoundException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 79&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 80&lt;/span&gt;             System.out.println("Oracle驱动没找到");&lt;br /&gt;&lt;span style="color: #008080;"&gt; 81&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (InstantiationException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 82&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 83&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IllegalAccessException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 84&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 85&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (SQLException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 86&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 87&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 88&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; conn;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 89&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 90&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;获得MySql数据库连接&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 91&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Connection getMySqlConnection(){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 92&lt;/span&gt;         initParams();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 93&lt;/span&gt;         Connection conn = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 94&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 95&lt;/span&gt;             Class.forName("com.mysql.jdbc.Driver").newInstance();    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;加载驱动&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 96&lt;/span&gt;             String url = "jdbc:mysql://"+ip+":3306/"+dbName+"?useUnicode=true&amp;amp;characterEncoding=utf8";&lt;br /&gt;&lt;span style="color: #008080;"&gt; 97&lt;/span&gt;             conn = DriverManager.getConnection(url, username, password);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 98&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (ClassNotFoundException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 99&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;100&lt;/span&gt;             System.out.println("MySql驱动没找到");&lt;br /&gt;&lt;span style="color: #008080;"&gt;101&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (SQLException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;102&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;103&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (InstantiationException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;104&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;105&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IllegalAccessException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;106&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;107&lt;/span&gt;         }        &lt;br /&gt;&lt;span style="color: #008080;"&gt;108&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; conn;&lt;br /&gt;&lt;span style="color: #008080;"&gt;109&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;110&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;获取Derby数据库连接&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;111&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Connection getDerbyConnection(){&lt;br /&gt;&lt;span style="color: #008080;"&gt;112&lt;/span&gt;         initParams();&lt;br /&gt;&lt;span style="color: #008080;"&gt;113&lt;/span&gt;         Connection conn = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;114&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;115&lt;/span&gt;             Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;加载驱动&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;116&lt;/span&gt;             String url = "jdbc:derby://"+ip+":1527/"+dbName+";create=true";&lt;br /&gt;&lt;span style="color: #008080;"&gt;117&lt;/span&gt;             conn = DriverManager.getConnection(url, username, password);&lt;br /&gt;&lt;span style="color: #008080;"&gt;118&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (ClassNotFoundException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;119&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;120&lt;/span&gt;             System.out.println("Derby驱动没找到");&lt;br /&gt;&lt;span style="color: #008080;"&gt;121&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (SQLException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;122&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;123&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (InstantiationException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;124&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;125&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IllegalAccessException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;126&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;127&lt;/span&gt;         }        &lt;br /&gt;&lt;span style="color: #008080;"&gt;128&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; conn;&lt;br /&gt;&lt;span style="color: #008080;"&gt;129&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;130&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;获取连接池连接&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;131&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Connection getConnectionByPool(){        &lt;br /&gt;&lt;span style="color: #008080;"&gt;132&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;133&lt;/span&gt;             Context ctx = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; InitialContext();&lt;br /&gt;&lt;span style="color: #008080;"&gt;134&lt;/span&gt;             Context subContext = (Context)ctx.lookup("java:comp/env");&lt;br /&gt;&lt;span style="color: #008080;"&gt;135&lt;/span&gt;             String dsName="";&lt;br /&gt;&lt;span style="color: #008080;"&gt;136&lt;/span&gt;             dsName = resourceName;&lt;br /&gt;&lt;span style="color: #008080;"&gt;137&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt;138&lt;/span&gt;             DataSource dataSource = (DataSource)subContext.lookup(dsName);&lt;br /&gt;&lt;span style="color: #008080;"&gt;139&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;上面两句可以合写成下边这句&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;140&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;ctx.lookup("java:comp/env/jdbc/oracle");&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; java:comp/env/ 规定：加前缀指定资源&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;141&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; dataSource.getConnection();&lt;br /&gt;&lt;span style="color: #008080;"&gt;142&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;143&lt;/span&gt;           &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (NamingException e) {e.printStackTrace();}&lt;br /&gt;&lt;span style="color: #008080;"&gt;144&lt;/span&gt;           &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (SQLException e) {e.printStackTrace();}&lt;br /&gt;&lt;span style="color: #008080;"&gt;145&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;        &lt;br /&gt;&lt;span style="color: #008080;"&gt;146&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;147&lt;/span&gt; }&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;读取.properties文件&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;package&lt;/span&gt; com.db;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.io.File;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.io.FileInputStream;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.io.FileNotFoundException;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.io.IOException;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.net.URISyntaxException;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;import&lt;/span&gt; java.util.Properties;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; &lt;span style="color: #008000;"&gt;/**&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;span style="color: #008000;"&gt; * 数据库访问配置文件各参数的获取&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt; &lt;span style="color: #008000;"&gt; * &lt;/span&gt;&lt;span style="color: #808080;"&gt;@author&lt;/span&gt;&lt;span style="color: #008000;"&gt; lzx&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;span style="color: #008000;"&gt; *&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;  &lt;span style="color: #008000;"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; DbConfig {&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;数据库及server配置文件路径&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;final&lt;/span&gt; String ACTIONPATH = "config.properties";  &lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; DbConfig instance=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String db_username=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String db_password=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String db_name=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String ip=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String ags_user=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String ags_password=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String ags_domain=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String ags_host=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; String ags_servicename=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; DbConfig(){}&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getDb_username() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; db_username;&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getDb_password() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; db_password;&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getDb_name() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; db_name;&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getIp() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; ip;&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getAgs_user() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; ags_user;&lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getAgs_password() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; ags_password;&lt;br /&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getAgs_domain() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; ags_domain;&lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getAgs_host() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; ags_host;&lt;br /&gt;&lt;span style="color: #008080;"&gt;55&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;56&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; String getAgs_servicename() {&lt;br /&gt;&lt;span style="color: #008080;"&gt;57&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; ags_servicename;&lt;br /&gt;&lt;span style="color: #008080;"&gt;58&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;59&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt;60&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; DbConfig getInstance(){&lt;br /&gt;&lt;span style="color: #008080;"&gt;61&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(instance==&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;){&lt;br /&gt;&lt;span style="color: #008080;"&gt;62&lt;/span&gt;             instance= &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; DbConfig().getNewDbConfig();&lt;br /&gt;&lt;span style="color: #008080;"&gt;63&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;64&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; instance;&lt;br /&gt;&lt;span style="color: #008080;"&gt;65&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;66&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt;67&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; DbConfig getNewDbConfig(){&lt;br /&gt;&lt;span style="color: #008080;"&gt;68&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt;69&lt;/span&gt;         DbConfig dc=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; DbConfig();&lt;br /&gt;&lt;span style="color: #008080;"&gt;70&lt;/span&gt;         Properties prop = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Properties();  &lt;br /&gt;&lt;span style="color: #008080;"&gt;71&lt;/span&gt;         String path=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;72&lt;/span&gt;         FileInputStream fis=&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;73&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt;74&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt;75&lt;/span&gt;             path = DbConfig.&lt;span style="color: #0000ff;"&gt;class&lt;/span&gt;.getClassLoader().getResource("").toURI().getPath();&lt;br /&gt;&lt;span style="color: #008080;"&gt;76&lt;/span&gt;             fis = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FileInputStream(&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; File(path + ACTIONPATH));&lt;br /&gt;&lt;span style="color: #008080;"&gt;77&lt;/span&gt;             prop.load(fis);&lt;br /&gt;&lt;span style="color: #008080;"&gt;78&lt;/span&gt;             dc.db_username=prop.getProperty("db_username"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;79&lt;/span&gt;             dc.db_password=prop.getProperty("db_password"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;80&lt;/span&gt;             dc.db_name=prop.getProperty("db_name"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;81&lt;/span&gt;             dc.ip=prop.getProperty("ip"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;82&lt;/span&gt;             dc.ags_user=prop.getProperty("ags_user"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;83&lt;/span&gt;             dc.ags_password=prop.getProperty("ags_password"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;84&lt;/span&gt;             dc.ags_domain=prop.getProperty("ags_domain"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;85&lt;/span&gt;             dc.ags_host=prop.getProperty("ags_host"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;86&lt;/span&gt;             dc.ags_servicename=prop.getProperty("ags_servicename"); &lt;br /&gt;&lt;span style="color: #008080;"&gt;87&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (URISyntaxException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;88&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;89&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (FileNotFoundException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;90&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;91&lt;/span&gt;         } &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (IOException e) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;92&lt;/span&gt;             e.printStackTrace();&lt;br /&gt;&lt;span style="color: #008080;"&gt;93&lt;/span&gt;         }  &lt;br /&gt;&lt;span style="color: #008080;"&gt;94&lt;/span&gt;         &lt;br /&gt;&lt;span style="color: #008080;"&gt;95&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; dc;&lt;br /&gt;&lt;span style="color: #008080;"&gt;96&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;97&lt;/span&gt; }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;对应的配置文件如下：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;config.properties&lt;br /&gt;&lt;br /&gt;#database username&lt;br /&gt;db_username=sde&lt;br /&gt;#database password&lt;br /&gt;db_password=sde&lt;br /&gt;#database server name&lt;br /&gt;db_name=RASA&lt;br /&gt;#database server ip&lt;br /&gt;ip=localhost&lt;br /&gt;#arcgis server username&lt;br /&gt;ags_user=zj&lt;br /&gt;#arcgis server password&lt;br /&gt;ags_password=0.&lt;br /&gt;#arcgis server user domain&lt;br /&gt;ags_domain=zj&lt;br /&gt;#arcgis server host address&lt;br /&gt;ags_host=localhost&lt;br /&gt;#arcgis server feature service name&lt;br /&gt;ags_servicename=map&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2361273.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/21/2361273.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/15/2352739.html</id><title type="text">ArcGIS Engine shp转CAD</title><summary type="text">1 AO 显示label label转annotation 使用gp工具转换： createCadXData 添加附加属性 ExportCAD2 AE 转dxf anno转换时有问题 下面为转换dxf的代码：using System;using System.Collections.Generic;using System.Text;using System.IO;using System.Globalization;using ESRI.ArcGIS.Geometry;using ESRI.ArcGIS.Geodatabase;using ESRI.ArcGIS....</summary><published>2012-02-15T07:38:00Z</published><updated>2012-02-15T07:38:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352739.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352739.html"/><content type="html">&lt;p&gt;&lt;span&gt;1 AO&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;显示label&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;label转annotation&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;使用gp工具转换：&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span&gt;createCadXData 添加附加属性&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span&gt;ExportCAD&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;2 AE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;转dxf&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;anno转换时有问题&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;下面为转换dxf的代码：&lt;/span&gt;&lt;/span&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;using System;&lt;br/&gt;using System.Collections.Generic;&lt;br/&gt;using System.Text;&lt;br/&gt;using System.IO;&lt;br/&gt;using System.Globalization;&lt;br/&gt;&lt;br/&gt;using ESRI.ArcGIS.Geometry;&lt;br/&gt;using ESRI.ArcGIS.Geodatabase;&lt;br/&gt;using ESRI.ArcGIS.Carto;&lt;br/&gt;&lt;br/&gt;//Author: Domenico Ciavarella&lt;br/&gt;//www.studioat.it&lt;br/&gt;&lt;br/&gt;namespace road&lt;br/&gt;{&lt;br/&gt;    public class ConvertDXFArgs : System.EventArgs&lt;br/&gt;    {&lt;br/&gt;        bool result = false;&lt;br/&gt;        Exception ex = null;&lt;br/&gt;&lt;br/&gt;        public ConvertDXFArgs()&lt;br/&gt;        {&lt;br/&gt;            result = true;&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        public ConvertDXFArgs(Exception ex)&lt;br/&gt;        {&lt;br/&gt;            this.ex = ex;&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        public bool Result&lt;br/&gt;        {&lt;br/&gt;            get { return result; }&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        public Exception Exception&lt;br/&gt;        {&lt;br/&gt;            get { return ex; }&lt;br/&gt;        }&lt;br/&gt;    }&lt;br/&gt;&lt;br/&gt;    public class ConvertDXF&lt;br/&gt;    {&lt;br/&gt;        public delegate void OnCompleted(object sender, ConvertDXFArgs e);&lt;br/&gt;        public event OnCompleted completed;&lt;br/&gt;&lt;br/&gt;        struct ColorDXF&lt;br/&gt;        {&lt;br/&gt;            public byte Red;&lt;br/&gt;            public byte Green;&lt;br/&gt;            public byte Blue;&lt;br/&gt;            public ColorDXF(byte r, byte g, byte b)&lt;br/&gt;            {&lt;br/&gt;                Red = r;&lt;br/&gt;                Green = g;&lt;br/&gt;                Blue = b;&lt;br/&gt;            }&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        struct TagDXF&lt;br/&gt;        {&lt;br/&gt;            public const string HEADER = "HEADER";&lt;br/&gt;            public const string TABLES = "TABLES";&lt;br/&gt;            public const string ENTITIES = "ENTITIES";&lt;br/&gt;            public const string BLOCKS = "BLOCKS";&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        string m_Filename = null;&lt;br/&gt;        IFeatureLayer m_FeatureLayer = null;&lt;br/&gt;        TextWriter m_tw = null;&lt;br/&gt;&lt;br/&gt;        public ConvertDXF(string filename, IFeatureLayer featureLayer)&lt;br/&gt;        {&lt;br/&gt;            m_Filename = filename;&lt;br/&gt;            m_FeatureLayer = featureLayer;&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        public void Convert()&lt;br/&gt;        {&lt;br/&gt;            if ((m_FeatureLayer == null) || (string.IsNullOrEmpty(m_Filename)))&lt;br/&gt;            {&lt;br/&gt;                completed(this, new ConvertDXFArgs(new Exception("FeatureLayer is null or Filename is null")));&lt;br/&gt;            }&lt;br/&gt;&lt;br/&gt;            try&lt;br/&gt;            {&lt;br/&gt;                m_tw = new StreamWriter(m_Filename);&lt;br/&gt;&lt;br/&gt;                IEnvelope envelope = m_FeatureLayer.AreaOfInterest;&lt;br/&gt;                IFeatureClass featureClass = m_FeatureLayer.FeatureClass;&lt;br/&gt;&lt;br/&gt;                Header(envelope);&lt;br/&gt;                Tables();&lt;br/&gt;                Blocks();&lt;br/&gt;                Entities();&lt;br/&gt;&lt;br/&gt;                completed(this, new ConvertDXFArgs());&lt;br/&gt;            }&lt;br/&gt;            catch (Exception ex)&lt;br/&gt;            {&lt;br/&gt;                completed(this, new ConvertDXFArgs(ex));&lt;br/&gt;            }&lt;br/&gt;            finally&lt;br/&gt;            {&lt;br/&gt;                m_tw.Close();&lt;br/&gt;                m_tw.Dispose();&lt;br/&gt;                m_tw = null;&lt;br/&gt;            }&lt;br/&gt;&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        /// &amp;lt;summary&amp;gt;&lt;br/&gt;        /// return color nearest Autocad&lt;br/&gt;        /// &amp;lt;/summary&amp;gt;&lt;br/&gt;        /// &amp;lt;param name="intR"&amp;gt;&amp;lt;/param&amp;gt;&lt;br/&gt;        /// &amp;lt;param name="intG"&amp;gt;&amp;lt;/param&amp;gt;&lt;br/&gt;        /// &amp;lt;param name="intB"&amp;gt;&amp;lt;/param&amp;gt;&lt;br/&gt;        /// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;br/&gt;        static ColorDXF GetColorDXF(ColorDXF c)&lt;br/&gt;        {&lt;br/&gt;            IDictionary&amp;lt;byte, string&amp;gt; dct = new Dictionary&amp;lt;byte, string&amp;gt;();&lt;br/&gt;            #region Dictionary Color&lt;br/&gt;            //item: colore come valore RGB, key: colore equivalent in AutoCAD&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;            dct.Add(0, "0|0|0");&lt;br/&gt;            dct.Add(1, "255|0|0");&lt;br/&gt;            dct.Add(2, "255|255|0");&lt;br/&gt;            dct.Add(3, "0|255|0");&lt;br/&gt;            dct.Add(4, "0|255|255");&lt;br/&gt;            dct.Add(5, "0|0|255");&lt;br/&gt;            dct.Add(6, "255|0|255");&lt;br/&gt;            dct.Add(7, "255|255|255");&lt;br/&gt;            dct.Add(8, "65|65|65");&lt;br/&gt;            dct.Add(9, "128|128|128");&lt;br/&gt;            dct.Add(10, "255|0|0");&lt;br/&gt;            dct.Add(11, "255|170|170");&lt;br/&gt;            dct.Add(12, "189|0|0");&lt;br/&gt;            dct.Add(13, "189|126|126");&lt;br/&gt;            dct.Add(14, "129|0|0");&lt;br/&gt;            dct.Add(15, "129|86|86");&lt;br/&gt;            dct.Add(16, "104|0|0");&lt;br/&gt;            dct.Add(17, "104|69|69");&lt;br/&gt;            dct.Add(18, "79|0|0");&lt;br/&gt;            dct.Add(19, "79|53|53");&lt;br/&gt;            dct.Add(20, "255|63|0");&lt;br/&gt;            dct.Add(21, "255|191|170");&lt;br/&gt;            dct.Add(22, "189|46|0");&lt;br/&gt;            dct.Add(23, "189|141|126");&lt;br/&gt;            dct.Add(24, "129|31|0");&lt;br/&gt;            dct.Add(25, "129|96|86");&lt;br/&gt;            dct.Add(26, "104|25|0");&lt;br/&gt;            dct.Add(27, "104|78|69");&lt;br/&gt;            dct.Add(28, "79|19|0");&lt;br/&gt;            dct.Add(29, "79|59|53");&lt;br/&gt;            dct.Add(30, "255|127|0");&lt;br/&gt;            dct.Add(31, "255|212|170");&lt;br/&gt;            dct.Add(32, "189|94|0");&lt;br/&gt;            dct.Add(33, "189|157|126");&lt;br/&gt;            dct.Add(34, "129|64|0");&lt;br/&gt;            dct.Add(35, "129|107|86");&lt;br/&gt;            dct.Add(36, "104|52|0");&lt;br/&gt;            dct.Add(37, "104|86|69");&lt;br/&gt;            dct.Add(38, "79|39|0");&lt;br/&gt;            dct.Add(39, "79|66|53");&lt;br/&gt;            dct.Add(40, "255|191|0");&lt;br/&gt;            dct.Add(41, "255|234|170");&lt;br/&gt;            dct.Add(42, "189|141|0");&lt;br/&gt;            dct.Add(43, "189|173|126");&lt;br/&gt;            dct.Add(44, "129|96|0");&lt;br/&gt;            dct.Add(45, "129|118|86");&lt;br/&gt;            dct.Add(46, "104|78|0");&lt;br/&gt;            dct.Add(47, "104|95|69");&lt;br/&gt;            dct.Add(48, "79|59|0");&lt;br/&gt;            dct.Add(49, "79|73|53");&lt;br/&gt;            dct.Add(50, "255|255|0");&lt;br/&gt;            dct.Add(51, "255|255|170");&lt;br/&gt;            dct.Add(52, "189|189|0");&lt;br/&gt;            dct.Add(53, "189|189|126");&lt;br/&gt;            dct.Add(54, "129|129|0");&lt;br/&gt;            dct.Add(55, "129|129|86");&lt;br/&gt;            dct.Add(56, "104|104|0");&lt;br/&gt;            dct.Add(57, "104|104|69");&lt;br/&gt;            dct.Add(58, "79|79|0");&lt;br/&gt;            dct.Add(59, "79|79|53");&lt;br/&gt;            dct.Add(60, "191|255|0");&lt;br/&gt;            dct.Add(61, "234|255|170");&lt;br/&gt;            dct.Add(62, "141|189|0");&lt;br/&gt;            dct.Add(63, "173|189|126");&lt;br/&gt;            dct.Add(64, "96|129|0");&lt;br/&gt;            dct.Add(65, "118|129|86");&lt;br/&gt;            dct.Add(66, "78|104|0");&lt;br/&gt;            dct.Add(67, "95|104|69");&lt;br/&gt;            dct.Add(68, "59|79|0");&lt;br/&gt;            dct.Add(69, "73|79|53");&lt;br/&gt;            dct.Add(70, "127|255|0");&lt;br/&gt;            dct.Add(71, "212|255|170");&lt;br/&gt;            dct.Add(72, "94|189|0");&lt;br/&gt;            dct.Add(73, "157|189|126");&lt;br/&gt;            dct.Add(74, "64|129|0");&lt;br/&gt;            dct.Add(75, "107|129|86");&lt;br/&gt;            dct.Add(76, "52|104|0");&lt;br/&gt;            dct.Add(77, "86|104|69");&lt;br/&gt;            dct.Add(78, "39|79|0");&lt;br/&gt;            dct.Add(79, "66|79|53");&lt;br/&gt;            dct.Add(80, "63|255|0");&lt;br/&gt;            dct.Add(81, "191|255|170");&lt;br/&gt;            dct.Add(82, "46|189|0");&lt;br/&gt;            dct.Add(83, "141|189|126");&lt;br/&gt;            dct.Add(84, "31|129|0");&lt;br/&gt;            dct.Add(85, "96|129|86");&lt;br/&gt;            dct.Add(86, "25|104|0");&lt;br/&gt;            dct.Add(87, "78|104|69");&lt;br/&gt;            dct.Add(88, "19|79|0");&lt;br/&gt;            dct.Add(89, "59|79|53");&lt;br/&gt;            dct.Add(90, "0|255|0");&lt;br/&gt;            dct.Add(91, "170|255|170");&lt;br/&gt;            dct.Add(92, "0|189|0");&lt;br/&gt;            dct.Add(93, "126|189|126");&lt;br/&gt;            dct.Add(94, "0|129|0");&lt;br/&gt;            dct.Add(95, "86|129|86");&lt;br/&gt;            dct.Add(96, "0|104|0");&lt;br/&gt;            dct.Add(97, "69|104|69");&lt;br/&gt;            dct.Add(98, "0|79|0");&lt;br/&gt;            dct.Add(99, "53|79|53");&lt;br/&gt;            dct.Add(100, "0|255|63");&lt;br/&gt;            dct.Add(101, "170|255|191");&lt;br/&gt;            dct.Add(102, "0|189|46");&lt;br/&gt;            dct.Add(103, "126|189|141");&lt;br/&gt;            dct.Add(104, "0|129|31");&lt;br/&gt;            dct.Add(105, "86|129|96");&lt;br/&gt;            dct.Add(106, "0|104|25");&lt;br/&gt;            dct.Add(107, "69|104|78");&lt;br/&gt;            dct.Add(108, "0|79|19");&lt;br/&gt;            dct.Add(109, "53|79|59");&lt;br/&gt;            dct.Add(110, "0|255|127");&lt;br/&gt;            dct.Add(111, "170|255|212");&lt;br/&gt;            dct.Add(112, "0|189|94");&lt;br/&gt;            dct.Add(113, "126|189|157");&lt;br/&gt;            dct.Add(114, "0|129|64");&lt;br/&gt;            dct.Add(115, "86|129|107");&lt;br/&gt;            dct.Add(116, "0|104|52");&lt;br/&gt;            dct.Add(117, "69|104|86");&lt;br/&gt;            dct.Add(118, "0|79|39");&lt;br/&gt;            dct.Add(119, "53|79|66");&lt;br/&gt;            dct.Add(120, "0|255|191");&lt;br/&gt;            dct.Add(121, "170|255|234");&lt;br/&gt;            dct.Add(122, "0|189|141");&lt;br/&gt;            dct.Add(123, "126|189|173");&lt;br/&gt;            dct.Add(124, "0|129|96");&lt;br/&gt;            dct.Add(125, "86|129|118");&lt;br/&gt;            dct.Add(126, "0|104|78");&lt;br/&gt;            dct.Add(127, "69|104|95");&lt;br/&gt;            dct.Add(128, "0|79|59");&lt;br/&gt;            dct.Add(129, "53|79|73");&lt;br/&gt;            dct.Add(130, "0|255|255");&lt;br/&gt;            dct.Add(131, "170|255|255");&lt;br/&gt;            dct.Add(132, "0|189|189");&lt;br/&gt;            dct.Add(133, "126|189|189");&lt;br/&gt;            dct.Add(134, "0|129|129");&lt;br/&gt;            dct.Add(135, "86|129|129");&lt;br/&gt;            dct.Add(136, "0|104|104");&lt;br/&gt;            dct.Add(137, "69|104|104");&lt;br/&gt;            dct.Add(138, "0|79|79");&lt;br/&gt;            dct.Add(139, "53|79|79");&lt;br/&gt;            dct.Add(140, "0|191|255");&lt;br/&gt;            dct.Add(141, "170|234|255");&lt;br/&gt;            dct.Add(142, "0|141|189");&lt;br/&gt;            dct.Add(143, "126|173|189");&lt;br/&gt;            dct.Add(144, "0|96|129");&lt;br/&gt;            dct.Add(145, "86|118|129");&lt;br/&gt;            dct.Add(146, "0|78|104");&lt;br/&gt;            dct.Add(147, "69|95|104");&lt;br/&gt;            dct.Add(148, "0|59|79");&lt;br/&gt;            dct.Add(149, "53|73|79");&lt;br/&gt;            dct.Add(150, "0|127|255");&lt;br/&gt;            dct.Add(151, "170|212|255");&lt;br/&gt;            dct.Add(152, "0|94|189");&lt;br/&gt;            dct.Add(153, "126|157|189");&lt;br/&gt;            dct.Add(154, "0|64|129");&lt;br/&gt;            dct.Add(155, "86|107|129");&lt;br/&gt;            dct.Add(156, "0|52|104");&lt;br/&gt;            dct.Add(157, "69|86|104");&lt;br/&gt;            dct.Add(158, "0|39|79");&lt;br/&gt;            dct.Add(159, "53|66|79");&lt;br/&gt;            dct.Add(160, "0|63|255");&lt;br/&gt;            dct.Add(161, "170|191|255");&lt;br/&gt;            dct.Add(162, "0|46|189");&lt;br/&gt;            dct.Add(163, "126|141|189");&lt;br/&gt;            dct.Add(164, "0|31|129");&lt;br/&gt;            dct.Add(165, "86|96|129");&lt;br/&gt;            dct.Add(166, "0|25|104");&lt;br/&gt;            dct.Add(167, "69|78|104");&lt;br/&gt;            dct.Add(168, "0|19|79");&lt;br/&gt;            dct.Add(169, "53|59|79");&lt;br/&gt;            dct.Add(170, "0|0|255");&lt;br/&gt;            dct.Add(171, "170|170|255");&lt;br/&gt;            dct.Add(172, "0|0|189");&lt;br/&gt;            dct.Add(173, "126|126|189");&lt;br/&gt;            dct.Add(174, "0|0|129");&lt;br/&gt;            dct.Add(175, "86|86|129");&lt;br/&gt;            dct.Add(176, "0|0|104");&lt;br/&gt;            dct.Add(177, "69|69|104");&lt;br/&gt;            dct.Add(178, "0|0|79");&lt;br/&gt;            dct.Add(179, "53|53|79");&lt;br/&gt;            dct.Add(180, "63|0|255");&lt;br/&gt;            dct.Add(181, "191|170|255");&lt;br/&gt;            dct.Add(182, "46|0|189");&lt;br/&gt;            dct.Add(183, "141|126|189");&lt;br/&gt;            dct.Add(184, "31|0|129");&lt;br/&gt;            dct.Add(185, "96|86|129");&lt;br/&gt;            dct.Add(186, "25|0|104");&lt;br/&gt;            dct.Add(187, "78|69|104");&lt;br/&gt;            dct.Add(188, "19|0|79");&lt;br/&gt;            dct.Add(189, "59|53|79");&lt;br/&gt;            dct.Add(190, "127|0|255");&lt;br/&gt;            dct.Add(191, "212|170|255");&lt;br/&gt;            dct.Add(192, "94|0|189");&lt;br/&gt;            dct.Add(193, "157|126|189");&lt;br/&gt;            dct.Add(194, "64|0|129");&lt;br/&gt;            dct.Add(195, "107|86|129");&lt;br/&gt;            dct.Add(196, "52|0|104");&lt;br/&gt;            dct.Add(197, "86|69|104");&lt;br/&gt;            dct.Add(198, "39|0|79");&lt;br/&gt;            dct.Add(199, "66|53|79");&lt;br/&gt;            dct.Add(200, "191|0|255");&lt;br/&gt;            dct.Add(201, "234|170|255");&lt;br/&gt;            dct.Add(202, "141|0|189");&lt;br/&gt;            dct.Add(203, "173|126|189");&lt;br/&gt;            dct.Add(204, "96|0|129");&lt;br/&gt;            dct.Add(205, "118|86|129");&lt;br/&gt;            dct.Add(206, "78|0|104");&lt;br/&gt;            dct.Add(207, "95|69|104");&lt;br/&gt;            dct.Add(208, "59|0|79");&lt;br/&gt;            dct.Add(209, "73|53|79");&lt;br/&gt;            dct.Add(210, "255|0|255");&lt;br/&gt;            dct.Add(211, "255|170|255");&lt;br/&gt;            dct.Add(212, "189|0|189");&lt;br/&gt;            dct.Add(213, "189|126|189");&lt;br/&gt;            dct.Add(214, "129|0|129");&lt;br/&gt;            dct.Add(215, "129|86|129");&lt;br/&gt;            dct.Add(216, "104|0|104");&lt;br/&gt;            dct.Add(217, "104|69|104");&lt;br/&gt;            dct.Add(218, "79|0|79");&lt;br/&gt;            dct.Add(219, "79|53|79");&lt;br/&gt;            dct.Add(220, "255|0|191");&lt;br/&gt;            dct.Add(221, "255|170|234");&lt;br/&gt;            dct.Add(222, "189|0|141");&lt;br/&gt;            dct.Add(223, "189|126|173");&lt;br/&gt;            dct.Add(224, "129|0|96");&lt;br/&gt;            dct.Add(225, "129|86|118");&lt;br/&gt;            dct.Add(226, "104|0|78");&lt;br/&gt;            dct.Add(227, "104|69|95");&lt;br/&gt;            dct.Add(228, "79|0|59");&lt;br/&gt;            dct.Add(229, "79|53|73");&lt;br/&gt;            dct.Add(230, "255|0|127");&lt;br/&gt;            dct.Add(231, "255|170|212");&lt;br/&gt;            dct.Add(232, "189|0|94");&lt;br/&gt;            dct.Add(233, "189|126|157");&lt;br/&gt;            dct.Add(234, "129|0|64");&lt;br/&gt;            dct.Add(235, "129|86|107");&lt;br/&gt;            dct.Add(236, "104|0|52");&lt;br/&gt;            dct.Add(237, "104|69|86");&lt;br/&gt;            dct.Add(238, "79|0|39");&lt;br/&gt;            dct.Add(239, "79|53|66");&lt;br/&gt;            dct.Add(240, "255|0|63");&lt;br/&gt;            dct.Add(241, "255|170|191");&lt;br/&gt;            dct.Add(242, "189|0|46");&lt;br/&gt;            dct.Add(243, "189|126|141");&lt;br/&gt;            dct.Add(244, "129|0|31");&lt;br/&gt;            dct.Add(245, "129|86|96");&lt;br/&gt;            dct.Add(246, "104|0|25");&lt;br/&gt;            dct.Add(247, "104|69|78");&lt;br/&gt;            dct.Add(248, "79|0|19");&lt;br/&gt;            dct.Add(249, "79|53|59");&lt;br/&gt;            dct.Add(250, "51|51|51");&lt;br/&gt;            dct.Add(251, "80|80|80");&lt;br/&gt;            dct.Add(252, "105|105|105");&lt;br/&gt;            dct.Add(253, "130|130|130");&lt;br/&gt;            dct.Add(254, "190|190|190");&lt;br/&gt;            dct.Add(255, "255|255|255");&lt;br/&gt;&lt;br/&gt;            #endregion Dictionary Color&lt;br/&gt;&lt;br/&gt;            string[] sColorCAD;  //tutti possibili colori della collection&lt;br/&gt;            byte bGCAD, bRCAD, bBCAD; //valori RGB di tutti colori&lt;br/&gt;            byte color = 0;&lt;br/&gt;&lt;br/&gt;            //color nearest of collection&lt;br/&gt;            double dblTemp = Double.MaxValue;&lt;br/&gt;            double dblDistance;&lt;br/&gt;&lt;br/&gt;            foreach (byte idx in dct.Keys)&lt;br/&gt;            {&lt;br/&gt;                sColorCAD = dct[idx].Split('|');&lt;br/&gt;                bRCAD = byte.Parse(sColorCAD[0]);&lt;br/&gt;                bGCAD = byte.Parse(sColorCAD[1]);&lt;br/&gt;                bBCAD = byte.Parse(sColorCAD[2]);&lt;br/&gt;&lt;br/&gt;                dblDistance = System.Math.Sqrt((bRCAD - c.Red) ^ 2 + (bGCAD - c.Green) ^ 2 + (bBCAD - c.Blue) ^ 2);&lt;br/&gt;&lt;br/&gt;                if (dblDistance &amp;lt; dblTemp)&lt;br/&gt;                {&lt;br/&gt;                    dblTemp = dblDistance;&lt;br/&gt;                    color = idx;&lt;br/&gt;                    if (dblTemp == 0)&lt;br/&gt;                        break;&lt;br/&gt;&lt;br/&gt;                }&lt;br/&gt;            }&lt;br/&gt;&lt;br/&gt;            //color "0" (not defined) -&amp;gt; color "7" (default of AutoCAD)&lt;br/&gt;            if (color == 0)&lt;br/&gt;                color = 7;&lt;br/&gt;&lt;br/&gt;            string[] r = dct[color].Split('|');&lt;br/&gt;            return new ColorDXF(byte.Parse(r[0]), byte.Parse(r[1]), byte.Parse(r[2]));&lt;br/&gt;        }&lt;br/&gt;        static IFormatProvider GetFormatProvider()&lt;br/&gt;        {&lt;br/&gt;            NumberFormatInfo nfi = new NumberFormatInfo();&lt;br/&gt;            nfi.CurrencyDecimalSeparator = ".";&lt;br/&gt;            return nfi;&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void BeginSection(string Tag)&lt;br/&gt;        {&lt;br/&gt;            m_tw.WriteLine(0);&lt;br/&gt;            m_tw.WriteLine("SECTION");&lt;br/&gt;            m_tw.WriteLine(2);&lt;br/&gt;            m_tw.WriteLine(Tag);&lt;br/&gt;        }&lt;br/&gt;        void EndSection()&lt;br/&gt;        {&lt;br/&gt;            m_tw.WriteLine(0);&lt;br/&gt;            m_tw.WriteLine("ENDSEC");&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void EOF()&lt;br/&gt;        {&lt;br/&gt;            m_tw.WriteLine(0);&lt;br/&gt;            m_tw.WriteLine("EOF");&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Point(IPointCollection pPoints, string LayerName, byte? Color)&lt;br/&gt;        {&lt;br/&gt;            for (int i = 0; i &amp;lt; pPoints.PointCount; i++)&lt;br/&gt;            {&lt;br/&gt;                Point(pPoints.get_Point(i), LayerName, Color);&lt;br/&gt;            }&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Blocks()&lt;br/&gt;        {&lt;br/&gt;            BeginSection(TagDXF.BLOCKS);&lt;br/&gt;            EndSection();&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Tables()&lt;br/&gt;        {&lt;br/&gt;            BeginSection(TagDXF.TABLES);&lt;br/&gt;            EndSection();&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Point(IPoint pPoint, string LayerName, byte? Color)&lt;br/&gt;        {&lt;br/&gt;            m_tw.WriteLine(0);&lt;br/&gt;            m_tw.WriteLine("POINT");&lt;br/&gt;            m_tw.WriteLine(8);&lt;br/&gt;            m_tw.WriteLine(LayerName);&lt;br/&gt;            m_tw.WriteLine(62);&lt;br/&gt;            if (Color != null)&lt;br/&gt;                m_tw.WriteLine(Color);&lt;br/&gt;&lt;br/&gt;            m_tw.WriteLine(10);&lt;br/&gt;            m_tw.WriteLine(pPoint.X.ToString(GetFormatProvider()));&lt;br/&gt;            m_tw.WriteLine(20);&lt;br/&gt;            m_tw.WriteLine(pPoint.Y.ToString(GetFormatProvider()));&lt;br/&gt;&lt;br/&gt;            m_tw.WriteLine(39); //Thickness&lt;br/&gt;            m_tw.WriteLine(3);&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Header(IEnvelope extent)&lt;br/&gt;        {&lt;br/&gt;            IPoint LLExtents = extent.LowerLeft;&lt;br/&gt;            IPoint URExtents = extent.UpperRight;&lt;br/&gt;&lt;br/&gt;            BeginSection(TagDXF.HEADER);&lt;br/&gt;&lt;br/&gt;            m_tw.WriteLine(9);&lt;br/&gt;            m_tw.WriteLine("$EXTMIN");&lt;br/&gt;            m_tw.WriteLine(10);&lt;br/&gt;            m_tw.WriteLine(LLExtents.X.ToString(GetFormatProvider()));&lt;br/&gt;            m_tw.WriteLine(20);&lt;br/&gt;            m_tw.WriteLine(LLExtents.Y.ToString(GetFormatProvider()));&lt;br/&gt;            m_tw.WriteLine(30);&lt;br/&gt;            m_tw.WriteLine(0);&lt;br/&gt;            m_tw.WriteLine(9);&lt;br/&gt;            m_tw.WriteLine("$EXTMAX");&lt;br/&gt;            m_tw.WriteLine(10);&lt;br/&gt;            m_tw.WriteLine(URExtents.X.ToString(GetFormatProvider()));&lt;br/&gt;            m_tw.WriteLine(20);&lt;br/&gt;            m_tw.WriteLine(URExtents.Y.ToString(GetFormatProvider()));&lt;br/&gt;            m_tw.WriteLine(30);&lt;br/&gt;            m_tw.WriteLine(0);&lt;br/&gt;&lt;br/&gt;            EndSection();&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Polyline(IGeometry pShape, string LayerName, byte? Color)&lt;br/&gt;        {&lt;br/&gt;&lt;br/&gt;            IGeometryCollection geometryCollection;&lt;br/&gt;&lt;br/&gt;            if (pShape is IGeometryCollection)&lt;br/&gt;                geometryCollection = pShape as IGeometryCollection;&lt;br/&gt;            else&lt;br/&gt;            {&lt;br/&gt;                object o = Type.Missing;&lt;br/&gt;                geometryCollection = new Polygon() as IGeometryCollection;&lt;br/&gt;                geometryCollection.AddGeometry(pShape, ref o, ref o);&lt;br/&gt;            }&lt;br/&gt;&lt;br/&gt;            for (int j = 0; j &amp;lt; geometryCollection.GeometryCount; j++)&lt;br/&gt;            {&lt;br/&gt;                ISegmentCollection pSegColl = geometryCollection.get_Geometry(j) as ISegmentCollection;&lt;br/&gt;&lt;br/&gt;                bool bFirstSeg = true;&lt;br/&gt;                ICircularArc pCA = null;&lt;br/&gt;                ISegment pSeg = null;&lt;br/&gt;&lt;br/&gt;                for (int i = 0; i &amp;lt; pSegColl.SegmentCount; i++)&lt;br/&gt;                {&lt;br/&gt;                    pSeg = pSegColl.get_Segment(i);&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;                    switch (pSeg.GeometryType)&lt;br/&gt;                    {&lt;br/&gt;                        case esriGeometryType.esriGeometryLine:&lt;br/&gt;&lt;br/&gt;                            if (bFirstSeg)&lt;br/&gt;                            {&lt;br/&gt;                                m_tw.WriteLine(0);&lt;br/&gt;                                m_tw.WriteLine("POLYLINE");&lt;br/&gt;&lt;br/&gt;                                m_tw.WriteLine(8);&lt;br/&gt;&lt;br/&gt;                                m_tw.WriteLine(LayerName);&lt;br/&gt;&lt;br/&gt;                                m_tw.WriteLine(66);&lt;br/&gt;                                m_tw.WriteLine(1);&lt;br/&gt;&lt;br/&gt;                                if (Color != null)&lt;br/&gt;                                {&lt;br/&gt;                                    m_tw.WriteLine(62);&lt;br/&gt;                                    m_tw.WriteLine(Color);&lt;br/&gt;                                }&lt;br/&gt;                                m_tw.WriteLine(6);&lt;br/&gt;                                m_tw.WriteLine("CONTINUOUS");&lt;br/&gt;                                //from point&lt;br/&gt;                                m_tw.WriteLine(0);&lt;br/&gt;                                m_tw.WriteLine("VERTEX");&lt;br/&gt;                                m_tw.WriteLine(8);&lt;br/&gt;&lt;br/&gt;                                m_tw.WriteLine(LayerName);&lt;br/&gt;&lt;br/&gt;                                m_tw.WriteLine(10);&lt;br/&gt;                                m_tw.WriteLine(pSeg.FromPoint.X.ToString(GetFormatProvider()));&lt;br/&gt;                                m_tw.WriteLine(20);&lt;br/&gt;                                m_tw.WriteLine(pSeg.FromPoint.Y.ToString(GetFormatProvider()));&lt;br/&gt;&lt;br/&gt;                                bFirstSeg = !bFirstSeg;&lt;br/&gt;                            }&lt;br/&gt;&lt;br/&gt;                            // to point&lt;br/&gt;                            m_tw.WriteLine(0);&lt;br/&gt;                            m_tw.WriteLine("VERTEX");&lt;br/&gt;                            m_tw.WriteLine(8);&lt;br/&gt;                            m_tw.WriteLine(LayerName);&lt;br/&gt;&lt;br/&gt;                            m_tw.WriteLine(10);&lt;br/&gt;                            m_tw.WriteLine(pSeg.ToPoint.X.ToString(GetFormatProvider()));&lt;br/&gt;                            m_tw.WriteLine(20);&lt;br/&gt;                            m_tw.WriteLine(pSeg.ToPoint.Y.ToString(GetFormatProvider()));&lt;br/&gt;                            if (i == (pSegColl.SegmentCount - 1))&lt;br/&gt;                            {&lt;br/&gt;                                m_tw.WriteLine(0);&lt;br/&gt;                                m_tw.WriteLine("SEQEND");&lt;br/&gt;                                m_tw.WriteLine(8);&lt;br/&gt;                                m_tw.WriteLine(LayerName);&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;                            }&lt;br/&gt;                            break;&lt;br/&gt;&lt;br/&gt;                        case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryCircularArc:&lt;br/&gt;                            if (!bFirstSeg)&lt;br/&gt;                            {&lt;br/&gt;&lt;br/&gt;                                m_tw.WriteLine(0);&lt;br/&gt;                                m_tw.WriteLine("SEQEND");&lt;br/&gt;                                m_tw.WriteLine(8);&lt;br/&gt;                                m_tw.WriteLine(LayerName);&lt;br/&gt;                            }&lt;br/&gt;&lt;br/&gt;                            pCA = pSeg as ICircularArc;&lt;br/&gt;&lt;br/&gt;                            m_tw.WriteLine(0);&lt;br/&gt;                            m_tw.WriteLine("ARC");&lt;br/&gt;                            m_tw.WriteLine(8);&lt;br/&gt;                            m_tw.WriteLine(LayerName);&lt;br/&gt;                            m_tw.WriteLine(10);&lt;br/&gt;                            m_tw.WriteLine(pCA.CenterPoint.X.ToString(GetFormatProvider()));&lt;br/&gt;                            m_tw.WriteLine(20);&lt;br/&gt;                            m_tw.WriteLine(pCA.CenterPoint.Y.ToString(GetFormatProvider()));&lt;br/&gt;                            m_tw.WriteLine(40);&lt;br/&gt;                            m_tw.WriteLine(pCA.Radius);&lt;br/&gt;&lt;br/&gt;                            string sFromAngle = (pCA.FromAngle * 180 / Math.PI).ToString(GetFormatProvider());&lt;br/&gt;                            string sToAngle = (pCA.ToAngle * 180 / Math.PI).ToString(GetFormatProvider());&lt;br/&gt;&lt;br/&gt;                            m_tw.WriteLine(50);&lt;br/&gt;                            m_tw.WriteLine(pCA.IsCounterClockwise ? sFromAngle : sToAngle);&lt;br/&gt;                            m_tw.WriteLine(51);&lt;br/&gt;                            m_tw.WriteLine(pCA.IsCounterClockwise ? sToAngle : sFromAngle);&lt;br/&gt;&lt;br/&gt;                            bFirstSeg = true;&lt;br/&gt;                            break;&lt;br/&gt;                    }&lt;br/&gt;                }&lt;br/&gt;            }&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Polygon(IGeometry pShape, string LayerName, byte? Color)&lt;br/&gt;        {&lt;br/&gt;            IPolygon4 polygon = pShape as IPolygon4;&lt;br/&gt;            IGeometryBag exteriorRings = polygon.ExteriorRingBag;&lt;br/&gt;&lt;br/&gt;            //For each exterior rings find the interior rings associated with it&lt;br/&gt;            IEnumGeometry exteriorRingsEnum = exteriorRings as IEnumGeometry;&lt;br/&gt;            exteriorRingsEnum.Reset();&lt;br/&gt;            IRing currentExteriorRing = exteriorRingsEnum.Next() as IRing;&lt;br/&gt;&lt;br/&gt;            while (currentExteriorRing != null)&lt;br/&gt;            {&lt;br/&gt;                Polyline(currentExteriorRing, LayerName, Color);&lt;br/&gt;&lt;br/&gt;                IGeometryBag interiorRings = polygon.get_InteriorRingBag(currentExteriorRing);&lt;br/&gt;                IEnumGeometry interiorRingsEnum = interiorRings as IEnumGeometry;&lt;br/&gt;                interiorRingsEnum.Reset();&lt;br/&gt;                IRing currentInteriorRing = interiorRingsEnum.Next() as IRing;&lt;br/&gt;                while (currentInteriorRing != null)&lt;br/&gt;                {&lt;br/&gt;                    Polyline(currentInteriorRing, LayerName, Color);&lt;br/&gt;                    currentInteriorRing = interiorRingsEnum.Next() as IRing;&lt;br/&gt;                }&lt;br/&gt;                currentExteriorRing = exteriorRingsEnum.Next() as IRing;&lt;br/&gt;            }&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        void Entities()&lt;br/&gt;        {&lt;br/&gt;            BeginSection(TagDXF.ENTITIES);&lt;br/&gt;&lt;br/&gt;            byte? Color = 7;&lt;br/&gt;            string LayerName = m_FeatureLayer.Name;&lt;br/&gt;&lt;br/&gt;            IFeatureClass featureClass = m_FeatureLayer.FeatureClass;&lt;br/&gt;            IFeatureCursor featureCursor = featureClass.Search(null, true);&lt;br/&gt;            IFeature feature = featureCursor.NextFeature();&lt;br/&gt;            IGeometry shape = null;&lt;br/&gt;&lt;br/&gt;            while (feature != null)&lt;br/&gt;            {&lt;br/&gt;                shape = feature.ShapeCopy;&lt;br/&gt;                //int? OID = feature.HasOID ? feature.OID : new Nullable&amp;lt;int&amp;gt;();&lt;br/&gt;&lt;br/&gt;                switch (shape.GeometryType)&lt;br/&gt;                {&lt;br/&gt;                    case esriGeometryType.esriGeometryPoint:&lt;br/&gt;                        Point(shape as IPoint, LayerName, Color);&lt;br/&gt;                        break;&lt;br/&gt;                    case esriGeometryType.esriGeometryMultipoint:&lt;br/&gt;                        Point(shape as IPointCollection, LayerName, Color);&lt;br/&gt;                        break;&lt;br/&gt;                    case esriGeometryType.esriGeometryPolyline:&lt;br/&gt;                        Polyline(shape, LayerName, Color);&lt;br/&gt;                        break;&lt;br/&gt;                    case esriGeometryType.esriGeometryPolygon:&lt;br/&gt;                        Polygon(shape, LayerName, Color);&lt;br/&gt;                        break;&lt;br/&gt;                    case esriGeometryType.esriGeometryEnvelope:&lt;br/&gt;                    case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPath:&lt;br/&gt;                    case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryAny:&lt;br/&gt;                    case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryRing:&lt;br/&gt;                    case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryLine:&lt;br/&gt;                        Polyline(shape, LayerName, Color);&lt;br/&gt;                        break;&lt;br/&gt;                    case esriGeometryType.esriGeometryCircularArc:&lt;br/&gt;                    case esriGeometryType.esriGeometryBezier3Curve:&lt;br/&gt;                    case esriGeometryType.esriGeometryEllipticArc:&lt;br/&gt;                        break;&lt;br/&gt;                }&lt;br/&gt;                feature = featureCursor.NextFeature();&lt;br/&gt;            }&lt;br/&gt;            EndSection();&lt;br/&gt;            EOF();&lt;br/&gt;        }&lt;br/&gt;    }&lt;br/&gt;}&lt;br/&gt;&lt;/div&gt;&lt;p&gt;包装为icommand，编译成dll，其他地方可直接调用&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;using System;&lt;br/&gt;using System.Drawing;&lt;br/&gt;using System.Windows.Forms;&lt;br/&gt;using System.Runtime.InteropServices;&lt;br/&gt;using ESRI.ArcGIS.ADF.BaseClasses;&lt;br/&gt;using ESRI.ArcGIS.ADF.CATIDs;&lt;br/&gt;using ESRI.ArcGIS.Controls;&lt;br/&gt;using ESRI.ArcGIS.Carto;&lt;br/&gt;using System.IO;&lt;br/&gt;&lt;br/&gt;//Author: Domenico Ciavarella&lt;br/&gt;//www.studioat.it&lt;br/&gt;&lt;br/&gt;namespace road&lt;br/&gt;{&lt;br/&gt;  &lt;br/&gt;&lt;br/&gt;  public sealed class ExportDXF : BaseCommand&lt;br/&gt;  {&lt;br/&gt;&lt;br/&gt;    IHookHelper m_hookHelper = null;&lt;br/&gt;    public ExportDXF()&lt;br/&gt;    {&lt;br/&gt;     &lt;br/&gt;&lt;br/&gt;      &lt;br/&gt;    }&lt;br/&gt;&lt;br/&gt;    #region Overriden Class Methods&lt;br/&gt;      public override string Tooltip&lt;br/&gt;      {&lt;br/&gt;          get&lt;br/&gt;          {&lt;br/&gt;              return "Export DXF";&lt;br/&gt;&lt;br/&gt;          }&lt;br/&gt;      }&lt;br/&gt;      public override string Caption&lt;br/&gt;      {&lt;br/&gt;          get&lt;br/&gt;          {&lt;br/&gt;              return "Export DXF";&lt;br/&gt;          }&lt;br/&gt;      }&lt;br/&gt;      public override string Message&lt;br/&gt;      {&lt;br/&gt;          get&lt;br/&gt;          {&lt;br/&gt;              return "Export DXF";&lt;br/&gt;          }&lt;br/&gt;      }&lt;br/&gt;&lt;br/&gt;    public override void OnCreate(object hook)&lt;br/&gt;    {&lt;br/&gt;      if (hook == null)&lt;br/&gt;        return;&lt;br/&gt;&lt;br/&gt;      try&lt;br/&gt;      {&lt;br/&gt;        m_hookHelper = new HookHelperClass();&lt;br/&gt;        m_hookHelper.Hook = hook;&lt;br/&gt;        if (m_hookHelper.ActiveView == null)&lt;br/&gt;          m_hookHelper = null;&lt;br/&gt;      }&lt;br/&gt;      catch&lt;br/&gt;      {&lt;br/&gt;        m_hookHelper = null;&lt;br/&gt;      }&lt;br/&gt;&lt;br/&gt;      if (m_hookHelper == null)&lt;br/&gt;        base.m_enabled = false;&lt;br/&gt;      else&lt;br/&gt;        base.m_enabled = true;&lt;br/&gt;    }&lt;br/&gt;&lt;br/&gt;    public override void OnClick()&lt;br/&gt;    {&lt;br/&gt;      &lt;br/&gt;      if (null == m_hookHelper)&lt;br/&gt;        return;&lt;br/&gt;&lt;br/&gt;     &lt;br/&gt;      object hook = null;&lt;br/&gt;      if (m_hookHelper.Hook is IToolbarControl2)&lt;br/&gt;      {&lt;br/&gt;          hook = ((IToolbarControl2)m_hookHelper.Hook).Buddy;&lt;br/&gt;      }&lt;br/&gt;      else&lt;br/&gt;      {&lt;br/&gt;          hook = m_hookHelper.Hook;&lt;br/&gt;      }&lt;br/&gt;&lt;br/&gt;      &lt;br/&gt;      object customProperty = null;&lt;br/&gt;      IMapControl3 mapControl = null;&lt;br/&gt;      if (hook is IMapControl3)&lt;br/&gt;      {&lt;br/&gt;        mapControl = (IMapControl3)hook;&lt;br/&gt;        customProperty = mapControl.CustomProperty;&lt;br/&gt;      }&lt;br/&gt;      else&lt;br/&gt;        return;&lt;br/&gt;&lt;br/&gt;      if (null == customProperty || !(customProperty is ILayer))&lt;br/&gt;        return;&lt;br/&gt;&lt;br/&gt;      &lt;br/&gt;      SaveFileDialog saveFileDialog = new SaveFileDialog();&lt;br/&gt;      saveFileDialog.Filter = "DXF File|*.dxf";&lt;br/&gt;      saveFileDialog.Title = "Export layer in dxf";&lt;br/&gt;      saveFileDialog.RestoreDirectory = true;&lt;br/&gt;      saveFileDialog.FileName = System.IO.Path.Combine(saveFileDialog.InitialDirectory, ((ILayer)customProperty).Name + ".dxf");&lt;br/&gt;&lt;br/&gt;      &lt;br/&gt;      DialogResult dr = saveFileDialog.ShowDialog();&lt;br/&gt;      if (saveFileDialog.FileName != string.Empty &amp;amp;&amp;amp; dr == DialogResult.OK)&lt;br/&gt;      {&lt;br/&gt;        if (System.IO.File.Exists(saveFileDialog.FileName))&lt;br/&gt;        {&lt;br/&gt;          System.IO.File.Delete(saveFileDialog.FileName);&lt;br/&gt;        }&lt;br/&gt;        &lt;br/&gt;&lt;br/&gt;        ILayer layer = customProperty as ILayer;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;        ConvertDXF dxf = new ConvertDXF(saveFileDialog.FileName, layer as IFeatureLayer);&lt;br/&gt;        dxf.completed += new ConvertDXF.OnCompleted(dxf_completed);&lt;br/&gt;        dxf.Convert();&lt;br/&gt;    &lt;br/&gt;      }&lt;br/&gt;      &lt;br/&gt;      &lt;br/&gt;    }&lt;br/&gt;    void dxf_completed(object sender, ConvertDXFArgs e)&lt;br/&gt;    {&lt;br/&gt;        if (e.Result)&lt;br/&gt;            MessageBox.Show("Export success!");&lt;br/&gt;        else&lt;br/&gt;            MessageBox.Show("Export failed:" + e.Exception.Message);&lt;br/&gt;    }&lt;br/&gt;    #endregion&lt;br/&gt;  }&lt;br/&gt;}&lt;br/&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;使用：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;            IMap map = m_mapControl.Map;&lt;br/&gt;            ILayer layer = map.get_Layer(0);&lt;br/&gt;            m_mapControl.CustomProperty = layer;&lt;br/&gt;&lt;br/&gt;            ICommand cmd = new ExportDXF();&lt;br/&gt;&lt;br/&gt;            cmd.OnCreate(m_mapControl.Object);&lt;br/&gt;            cmd.OnClick();&lt;br/&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;3 FME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;显示label&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;label转annotation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;从c#里调用FME模板执行转换cad&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2352739.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352739.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/15/2352704.html</id><title type="text">C# AutoCAD ActiveX 二次开发 -- CAD图层合并</title><summary type="text">因使用AutoCAD版本为2004,2006版本以后才有.net开发包，因此采用ActiveX方式进行开发。功能为：将几个CAD图层合并到其中一个上，并设置坐标，线和标记的颜色和字体。CAD对象的层级为AcadApplication - AcadDocument - AcadModelSpace AcadEntity 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawin...</summary><published>2012-02-15T07:22:00Z</published><updated>2012-02-15T07:22:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352704.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352704.html"/><content type="html">&lt;p&gt;因使用AutoCAD版本为2004,2006版本以后才有.net开发包，因此采用ActiveX方式进行开发。&lt;/p&gt;&lt;p&gt;功能为：将几个CAD图层合并到其中一个上，并设置坐标，线和标记的颜色和字体。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;CAD对象的层级为&lt;/p&gt;AcadApplication -AcadDocument -AcadModelSpace AcadEntity&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt;  1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System.ComponentModel;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  4&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System.Data;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  5&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System.Drawing;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  6&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System.Text;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  7&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; System.Windows.Forms;&lt;br /&gt;&lt;span style="color: #008080;"&gt;  8&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;  9&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; AutoCAD;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 10&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 11&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;namespace&lt;/span&gt; road&lt;br /&gt;&lt;span style="color: #008080;"&gt; 12&lt;/span&gt; {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 13&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; CadMerge&lt;br /&gt;&lt;span style="color: #008080;"&gt; 14&lt;/span&gt;     {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 15&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;#region&lt;/span&gt; members&lt;br /&gt;&lt;span style="color: #008080;"&gt; 16&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 17&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; AcadApplication app = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 18&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; AcadDocument docLine = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 19&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; AcadDocument docLineAnno = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 20&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; AcadDocument docPoint = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 21&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; AcadDocument docPointAnno = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 22&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 23&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; AcadModelSpace msLineAnno = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 24&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 25&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; dirPath = &lt;span style="color: #800000;"&gt;""&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 26&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; tempPath = &lt;span style="color: #800000;"&gt;""&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 27&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; linePath = &lt;span style="color: #800000;"&gt;""&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 28&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; pointPath = &lt;span style="color: #800000;"&gt;""&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 29&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; pointAnnoPath = &lt;span style="color: #800000;"&gt;""&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 30&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; lineAnnoPath = &lt;span style="color: #800000;"&gt;""&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 31&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 32&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; ProgressBar m_bar = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 33&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 34&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;#endregion&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 35&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 36&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; CadMerge(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; path, ProgressBar bar)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 37&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 38&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;.dirPath = path;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 39&lt;/span&gt;             m_bar = bar;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 40&lt;/span&gt;             init();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 41&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 42&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 43&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;初始化参数&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 44&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; init()&lt;br /&gt;&lt;span style="color: #008080;"&gt; 45&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 46&lt;/span&gt;             dirPath = dirPath+&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 47&lt;/span&gt;             tempPath = dirPath + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;temp\\&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 48&lt;/span&gt;             linePath = tempPath + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;line.dwg&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 49&lt;/span&gt;             lineAnnoPath = dirPath + MainForm.m_resultDwgName;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 50&lt;/span&gt;             pointPath = tempPath + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;point.dwg&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 51&lt;/span&gt;             pointAnnoPath = tempPath + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;point_anno.dwg&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 52&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 53&lt;/span&gt;             app = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; AcadApplication();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 54&lt;/span&gt;             m_bar.PerformStep();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 55&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;app.Application.Visible = true;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 56&lt;/span&gt;             docLine = app.Documents.Open(linePath, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 57&lt;/span&gt;             docLineAnno = app.Documents.Open(lineAnnoPath, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 58&lt;/span&gt;             m_bar.PerformStep();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 59&lt;/span&gt;             docPoint = app.Documents.Open(pointPath, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 60&lt;/span&gt;             docPointAnno = app.Documents.Open(pointAnnoPath, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 61&lt;/span&gt;             m_bar.PerformStep();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 62&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 63&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 64&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;关闭cad文档&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 65&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; CloseDocuments(AcadApplication app)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 66&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 67&lt;/span&gt;             AcadDocuments docs = app.Documents;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 68&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (AcadDocument doc &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; docs)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 69&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 70&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (doc.ReadOnly)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 71&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 72&lt;/span&gt;                     doc.Close(&lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 73&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 74&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 75&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 76&lt;/span&gt;                     doc.Close(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 77&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 78&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 79&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 80&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 81&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;合并cad文档&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 82&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; MergeCADLayers()&lt;br /&gt;&lt;span style="color: #008080;"&gt; 83&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 84&lt;/span&gt;             msLineAnno = docLineAnno.ModelSpace;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 85&lt;/span&gt;             AcadModelSpace msLine = docLine.ModelSpace;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 86&lt;/span&gt;             AcadModelSpace msPoint = docPoint.ModelSpace;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 87&lt;/span&gt;             AcadModelSpace msPointAnno = docPointAnno.ModelSpace;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 88&lt;/span&gt;             updateLineAnno();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 89&lt;/span&gt;             AddLineToLineAnno(msLineAnno, msLine);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 90&lt;/span&gt;             m_bar.PerformStep();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 91&lt;/span&gt;             AddPointToLineAnno(msLineAnno, msPoint);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 92&lt;/span&gt;             m_bar.PerformStep();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 93&lt;/span&gt;             AddPointAnnoToLineAnno(msLineAnno, msPointAnno);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 94&lt;/span&gt;             updateColor();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 95&lt;/span&gt;             app.Update();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 96&lt;/span&gt;             docLineAnno.Save();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 97&lt;/span&gt;             CloseDocuments(app);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 98&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt; 99&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;100&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;更新线标记图层&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;101&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; updateLineAnno()&lt;br /&gt;&lt;span style="color: #008080;"&gt;102&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;103&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (AcadEntity entity &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; msLineAnno)&lt;br /&gt;&lt;span style="color: #008080;"&gt;104&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;105&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadText)&lt;br /&gt;&lt;span style="color: #008080;"&gt;106&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;107&lt;/span&gt;                     AcadText text = (AcadText)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;108&lt;/span&gt;                     msLineAnno.AddText(text.TextString, getPoint(text.InsertionPoint), text.Height);&lt;br /&gt;&lt;span style="color: #008080;"&gt;109&lt;/span&gt;                     text.Delete();&lt;br /&gt;&lt;span style="color: #008080;"&gt;110&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;111&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;112&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;113&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;114&lt;/span&gt;         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;点的转换，新坐标要求&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;115&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] getPoint(&lt;span style="color: #0000ff;"&gt;object&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;116&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;117&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] point = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[&lt;span style="color: #800080;"&gt;3&lt;/span&gt;];&lt;br /&gt;&lt;span style="color: #008080;"&gt;118&lt;/span&gt;             point[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;] = ((&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;)[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;]-&lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;119&lt;/span&gt;             point[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = ((&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;)[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;]-&lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;120&lt;/span&gt;             point[&lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;121&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;122&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; point;&lt;br /&gt;&lt;span style="color: #008080;"&gt;123&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;124&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;125&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;更新线和标记的颜色，标记的文字大小&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;126&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;127&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; updateColor()&lt;br /&gt;&lt;span style="color: #008080;"&gt;128&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;129&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (AcadEntity entity &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; msLineAnno)&lt;br /&gt;&lt;span style="color: #008080;"&gt;130&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;131&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadText)&lt;br /&gt;&lt;span style="color: #008080;"&gt;132&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;133&lt;/span&gt;                     AcadText text = (AcadText)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;134&lt;/span&gt;                     text.color = ACAD_COLOR.acRed;&lt;br /&gt;&lt;span style="color: #008080;"&gt;135&lt;/span&gt;                     text.Height = &lt;span style="color: #800080;"&gt;3.5&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;136&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;137&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadLWPolyline)&lt;br /&gt;&lt;span style="color: #008080;"&gt;138&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;139&lt;/span&gt;                     AcadLWPolyline line = (AcadLWPolyline)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;140&lt;/span&gt;                     line.color = ACAD_COLOR.acBlue;&lt;br /&gt;&lt;span style="color: #008080;"&gt;141&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;142&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadLine)&lt;br /&gt;&lt;span style="color: #008080;"&gt;143&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;144&lt;/span&gt;                     AcadLine line = (AcadLine)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;145&lt;/span&gt;                     line.color = ACAD_COLOR.acBlue;&lt;br /&gt;&lt;span style="color: #008080;"&gt;146&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;147&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadPoint)&lt;br /&gt;&lt;span style="color: #008080;"&gt;148&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;149&lt;/span&gt;                     AcadPoint point = (AcadPoint)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;150&lt;/span&gt;                     point.color = ACAD_COLOR.acGreen;&lt;br /&gt;&lt;span style="color: #008080;"&gt;151&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;152&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadSpline)&lt;br /&gt;&lt;span style="color: #008080;"&gt;153&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;154&lt;/span&gt;                     AcadSpline line = (AcadSpline)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;155&lt;/span&gt;                     line.color = ACAD_COLOR.acBlue;&lt;br /&gt;&lt;span style="color: #008080;"&gt;156&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;157&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadPolyline)&lt;br /&gt;&lt;span style="color: #008080;"&gt;158&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;159&lt;/span&gt;                     AcadPolyline line = (AcadPolyline)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;160&lt;/span&gt;                     line.color = ACAD_COLOR.acBlue;&lt;br /&gt;&lt;span style="color: #008080;"&gt;161&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;162&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;MessageBox.Show(entity.ObjectName);&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;163&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;164&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;165&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;166&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;将点标记添加到线标记图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;167&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;168&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; AddPointAnnoToLineAnno(AcadModelSpace msLineAnno, AcadModelSpace msPointAnno)&lt;br /&gt;&lt;span style="color: #008080;"&gt;169&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;170&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (AcadEntity entity &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; msPointAnno)&lt;br /&gt;&lt;span style="color: #008080;"&gt;171&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;172&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadText)&lt;br /&gt;&lt;span style="color: #008080;"&gt;173&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;174&lt;/span&gt;                     AcadText text = (AcadText)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;175&lt;/span&gt;                     msLineAnno.AddText(text.TextString,getPoint(text.InsertionPoint),text.Height);&lt;br /&gt;&lt;span style="color: #008080;"&gt;176&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;177&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;178&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;179&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;180&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;将线添加到线标记图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;181&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;182&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; AddLineToLineAnno(AcadModelSpace msLineAnno,AcadModelSpace msLine)&lt;br /&gt;&lt;span style="color: #008080;"&gt;183&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;184&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (AcadEntity entity &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; msLine)&lt;br /&gt;&lt;span style="color: #008080;"&gt;185&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;186&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadLWPolyline)&lt;br /&gt;&lt;span style="color: #008080;"&gt;187&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;188&lt;/span&gt;                     AcadLWPolyline line = (AcadLWPolyline)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;189&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] fromPoints = (&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])line.Coordinates;&lt;br /&gt;&lt;span style="color: #008080;"&gt;190&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; count = fromPoints.Length;&lt;br /&gt;&lt;span style="color: #008080;"&gt;191&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt; newCount = count * &lt;span style="color: #800080;"&gt;1.5&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;192&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; newCounti = (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt;)newCount;&lt;br /&gt;&lt;span style="color: #008080;"&gt;193&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] points = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[newCounti];&lt;br /&gt;&lt;span style="color: #008080;"&gt;194&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;195&lt;/span&gt;                     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;原entity中double数组为x,y,x,y&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;196&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;新Polyline要求点为x,y,z,x,y,z,此处z=0&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;197&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; i &amp;lt; count; i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt;198&lt;/span&gt;                     {&lt;br /&gt;&lt;span style="color: #008080;"&gt;199&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;200&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; index = i / &lt;span style="color: #800080;"&gt;2&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;201&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; j = index * &lt;span style="color: #800080;"&gt;3&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;202&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;203&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (i % &lt;span style="color: #800080;"&gt;2&lt;/span&gt; == &lt;span style="color: #800080;"&gt;0&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;204&lt;/span&gt;                         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;205&lt;/span&gt;                             points[j] = fromPoints[i]-&lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;206&lt;/span&gt;                             points[j + &lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;207&lt;/span&gt;                         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;208&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;209&lt;/span&gt;                         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;210&lt;/span&gt;                             points[j + &lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = fromPoints[i]-&lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;211&lt;/span&gt;                         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;212&lt;/span&gt;                     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;213&lt;/span&gt;                     msLineAnno.AddPolyline(points);&lt;br /&gt;&lt;span style="color: #008080;"&gt;214&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;215&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadLine)&lt;br /&gt;&lt;span style="color: #008080;"&gt;216&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;217&lt;/span&gt;                     AcadLine line = (AcadLine)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;218&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] startPoint = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[&lt;span style="color: #800080;"&gt;3&lt;/span&gt;];&lt;br /&gt;&lt;span style="color: #008080;"&gt;219&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] endPoint = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[&lt;span style="color: #800080;"&gt;3&lt;/span&gt;];&lt;br /&gt;&lt;span style="color: #008080;"&gt;220&lt;/span&gt;                     startPoint[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;] = ((&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])line.StartPoint)[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;] - &lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;221&lt;/span&gt;                     startPoint[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = ((&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])line.StartPoint)[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] - &lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;222&lt;/span&gt;                     startPoint[&lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;223&lt;/span&gt;                     endPoint[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;] = ((&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])line.EndPoint)[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;] - &lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;224&lt;/span&gt;                     endPoint[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = ((&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])line.EndPoint)[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] - &lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;225&lt;/span&gt;                     endPoint[&lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;226&lt;/span&gt;                     msLineAnno.AddLine(startPoint, endPoint);&lt;br /&gt;&lt;span style="color: #008080;"&gt;227&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;228&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;229&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;230&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;231&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;将点添加到线标记图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;232&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;233&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; AddPointToLineAnno(AcadModelSpace msLineAnno, AcadModelSpace msPoint)&lt;br /&gt;&lt;span style="color: #008080;"&gt;234&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;235&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (AcadEntity entity &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; msPoint)&lt;br /&gt;&lt;span style="color: #008080;"&gt;236&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;237&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadPoint)&lt;br /&gt;&lt;span style="color: #008080;"&gt;238&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;239&lt;/span&gt;                     AcadPoint point = (AcadPoint)entity;&lt;br /&gt;&lt;span style="color: #008080;"&gt;240&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] fromPoint = (&lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[])point.Coordinates;&lt;br /&gt;&lt;span style="color: #008080;"&gt;241&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[] topoint = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt;[&lt;span style="color: #800080;"&gt;3&lt;/span&gt;];&lt;br /&gt;&lt;span style="color: #008080;"&gt;242&lt;/span&gt;                     topoint[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;] = fromPoint[&lt;span style="color: #800080;"&gt;0&lt;/span&gt;]-&lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;243&lt;/span&gt;                     topoint[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = fromPoint[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;] - &lt;span style="color: #800080;"&gt;200000&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;244&lt;/span&gt;                     topoint[&lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;245&lt;/span&gt;                     msLineAnno.AddPoint(topoint); ;&lt;br /&gt;&lt;span style="color: #008080;"&gt;246&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;247&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;248&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;249&lt;/span&gt;     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;250&lt;/span&gt; }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;3 修改字体&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;AcadTextStyle style=docLineAnno.TextStyles.Add(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;宋体&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;style.fontFile="C:/WINDOWS/Fonts/simsun.ttc"; &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 程序在其他地方使用时，生成的cad文件打开时，可能会需要选择字体&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;style.SetFont(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;宋体&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;,&lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;,&lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;,&lt;span style="color: #800080;"&gt;0&lt;/span&gt;,&lt;span style="color: #800080;"&gt;0&lt;/span&gt;); &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;cad文件打开时，不需要选择字体&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;style.fontFile="C:/Programe Files/AutoCAD 2004/gbcbig.shx"; &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; 程序在其他地方使用时，生成的cad文件打开时，可能会需要选择字体&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;docLineAnno.ActiveTextStyle=style;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt;(AcadEntity entity &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; msLineAnno)&lt;br /&gt;{&lt;br /&gt;    &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;(entity &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; AcadText)&lt;br /&gt;    {&lt;br /&gt;        AcadText text=(AcadText)entity;&lt;br /&gt;        text.StyleName=&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;宋体&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;；&lt;br /&gt;        text.color=ACAD_COLOR.acByLayer;&lt;br /&gt;        text.Height=&lt;span style="color: #800080;"&gt;3.5&lt;/span&gt;;&lt;br /&gt;        text.ScaleFactor=&lt;span style="color: #800080;"&gt;0.75&lt;/span&gt;;        &lt;br /&gt;    }&lt;br /&gt;}&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;参考：&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.mjtd.com/oldsite/caivba/vba04-29.htm#2"&gt;创建和编辑AutoCAD 图元&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2352704.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352704.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/15/2352671.html</id><title type="text">c# 操作Excel</title><summary type="text">1 Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); 2 Workbook workbook = app.Workbooks.Add(true); 3 Worksheet sheet = (Worksheet)workbook.Worksheets["sheet1"]; 4 sheet = (Worksheet)work...</summary><published>2012-02-15T07:09:00Z</published><updated>2012-02-15T07:09:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352671.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352671.html"/><content type="html">&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;                 Microsoft.Office.Interop.Excel.Application app = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Microsoft.Office.Interop.Excel.Application();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;                 Workbook workbook = app.Workbooks.Add(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;                 Worksheet sheet = (Worksheet)workbook.Worksheets[&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;sheet1&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;];&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;                 sheet = (Worksheet)workbook.Worksheets.Add(Type.Missing, workbook.Worksheets[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;], &lt;span style="color: #800080;"&gt;1&lt;/span&gt;, Type.Missing);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;                 sheet.Activate();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;填充数据&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                 sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;序号&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;                 sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;道路编码&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                 sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;3&lt;/span&gt;] = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;起始节点&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;4&lt;/span&gt;] = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;结束节点&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; i &amp;lt; relations.Count; i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                     Relation r = relations[i];&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                     sheet.Cells[&lt;span style="color: #800080;"&gt;2&lt;/span&gt; + i, &lt;span style="color: #800080;"&gt;1&lt;/span&gt;] = r.index;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                     sheet.Cells[&lt;span style="color: #800080;"&gt;2&lt;/span&gt; + i, &lt;span style="color: #800080;"&gt;2&lt;/span&gt;] = r.roadNo;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                     sheet.Cells[&lt;span style="color: #800080;"&gt;2&lt;/span&gt; + i, &lt;span style="color: #800080;"&gt;3&lt;/span&gt;] = r.fromPointNo;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                     sheet.Cells[&lt;span style="color: #800080;"&gt;2&lt;/span&gt; + i, &lt;span style="color: #800080;"&gt;4&lt;/span&gt;] = r.toPointNo;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;自动调整列宽&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                 sheet.Columns.AutoFit();&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;单元格添加边框&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;                 Range range = sheet.get_Range(sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;1&lt;/span&gt;], sheet.Cells[relations.Count+&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;4&lt;/span&gt;]);&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;                 range.BorderAround(XlLineStyle.xlContinuous, XlBorderWeight.xlThick, XlColorIndex.xlColorIndexAutomatic, System.Drawing.Color.Black.ToArgb());&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                 range.Borders.LineStyle = &lt;span style="color: #800080;"&gt;1&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;第一行加粗并居中显示&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                 Range rangeHead = sheet.get_Range(sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;, &lt;span style="color: #800080;"&gt;1&lt;/span&gt;], sheet.Cells[&lt;span style="color: #800080;"&gt;1&lt;/span&gt;,&lt;span style="color: #800080;"&gt;4&lt;/span&gt;]);&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                 rangeHead.HorizontalAlignment = XlHAlign.xlHAlignCenter;&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;                 rangeHead.Font.Bold = &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                 app.Visible = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;                 app.DisplayAlerts = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                 workbook.Close(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;, filePath, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;object&lt;/span&gt; missing = System.Reflection.Missing.Value;&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;                 sheet = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;                 workbook = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;                 app.Quit();&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;                 System.Runtime.InteropServices.Marshal.ReleaseComObject(app);&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;                 app = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                 GC.Collect();&lt;/div&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2352671.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352671.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/15/2352313.html</id><title type="text">c# ini文件操作类（简单配置文件）</title><summary type="text">简单项目中可使用ini做为配置文件，操作类如下。 1 public class INIClass 2 { 3 public string inipath; 4 [System.Runtime.InteropServices.DllImport("kernel32")] 5 private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); 6 [System.Ru...</summary><published>2012-02-15T03:32:00Z</published><updated>2012-02-15T03:32:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352313.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352313.html"/><content type="html">&lt;p&gt;简单项目中可使用ini做为配置文件，操作类如下。&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; INIClass&lt;br /&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;     {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; inipath;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;         [System.Runtime.InteropServices.DllImport(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;kernel32&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;)]&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;extern&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;long&lt;/span&gt; WritePrivateProfileString(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; section, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; key, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; val, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; filePath);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         [System.Runtime.InteropServices.DllImport(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;kernel32&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;)]&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;extern&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; GetPrivateProfileString(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; section, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; key, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; def, StringBuilder retVal, &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; size, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; filePath);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt; 构造方法&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="INIPath"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;文件路径&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; INIClass(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; INIPath)&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             inipath = INIPath;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt; 写入INI文件&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="Section"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;项目名称(如 [TypeName] )&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="Key"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;键&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="Value"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;值&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; IniWriteValue(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; Section, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; Key, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; Value)&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             WritePrivateProfileString(Section, Key, Value, &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;.inipath);&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt; 读出INI文件&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="Section"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;项目名称(如 [TypeName] )&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="Key"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;键&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; IniReadValue(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; Section, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; Key)&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;             StringBuilder temp = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; StringBuilder(&lt;span style="color: #800080;"&gt;500&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = GetPrivateProfileString(Section, Key, &lt;span style="color: #800000;"&gt;""&lt;/span&gt;, temp, &lt;span style="color: #800080;"&gt;500&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;.inipath);&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; temp.ToString();&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt; 验证文件是否存在&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;布尔值&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;bool&lt;/span&gt; ExistINIFile()&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; File.Exists(inipath);&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;         }&lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;     }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;使用方法为：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;            INIClass ini=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; INIClass(System.Windows.Forms.Application.StartupPath + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\config.ini&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;);&lt;br /&gt;            m_parentDirPath = ini.IniReadValue(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;road&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;dir&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;).Trim(); &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;读取&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;  ini.IniWriteValue(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;road&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;dir&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, "d:\\aa");                    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;写入&lt;/span&gt;&lt;/div&gt;&lt;p&gt;对应ini文件内容为：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;[road]&lt;br /&gt;dir=D:\lzx\data&lt;/div&gt;&lt;p&gt;&lt;br /&gt;参考：&lt;/p&gt;&lt;p&gt;&lt;a href="http://baike.baidu.com/view/1296365.htm"&gt;ini文件&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="cb_post_title_url" href="http://www.cnblogs.com/dabaopku/archive/2010/02/21/1665059.html"&gt;ini配置文件读取类&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2352313.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352313.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/15/2352289.html</id><title type="text">c# 文件/文件夹相关方法</title><summary type="text">1 判断文件夹是否存在 1 /// &lt;summary&gt;文件夹是否存在 2 /// &lt;/summary&gt; 3 /// &lt;param name="dir"&gt;&lt;/param&gt; 4 /// &lt;returns&gt;&lt;/returns&gt; 5 public static Boolean isFolderExist(string dir) 6 { 7 if (System.IO.Directory.Exists(dir)) 8 return true; 9 return false;10...</summary><published>2012-02-15T03:17:00Z</published><updated>2012-02-15T03:17:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352289.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352289.html"/><content type="html">&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;1 判断文件夹是否存在&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;文件夹是否存在&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="dir"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Boolean isFolderExist(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; dir)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (System.IO.Directory.Exists(dir))&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&lt;br /&gt;2 判断文件夹是否为空&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;文件夹是否为空&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="dir"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Boolean isFolderEmpty(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; dir)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (!isFolderExist(dir)) &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             System.IO.DirectoryInfo di = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; DirectoryInfo(dir);&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (di.GetFiles().Length + di.GetDirectories().Length == &lt;span style="color: #800080;"&gt;0&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;3 创建文件夹&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;创建文件夹&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="dir"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; createFolder(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; dir)&lt;br /&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (!isFolderExist(dir))&lt;br /&gt;&lt;span style="color: #008080;"&gt;8&lt;/span&gt;                 System.IO.Directory.CreateDirectory(dir);&lt;br /&gt;&lt;span style="color: #008080;"&gt;9&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;4 判断文件名是否合法&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;判断文件名/文件夹名是否合法&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fileName"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;bool&lt;/span&gt; IsValidFileName(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; fileName)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;          {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;bool&lt;/span&gt; isValid = &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; errChar = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\/:*?\"&amp;lt;&amp;gt;|&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;  &lt;span style="color: #008000;"&gt;//&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt;.IsNullOrEmpty(fileName))&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 isValid = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; i &amp;lt; errChar.Length; i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (fileName.Contains(errChar[i].ToString()))&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                    {&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                         isValid = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                         &lt;span style="color: #0000ff;"&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; isValid;&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;5 删除文件夹&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;删除文件夹及其内容&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="from"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;原文件夹地址&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; deleteFolder(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (!Directory.Exists(&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;))&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; sub &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; Directory.GetDirectories(&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;))&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                 deleteFolder(sub + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; file &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; Directory.GetFiles(&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;))&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 File.Delete(file);&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;6 拷贝文件夹&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;拷贝文件夹及其内容&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="from"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;原文件夹地址&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="to"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;目标文件夹地址&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; copyFolder(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; to)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (!Directory.Exists(to))&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;                 Directory.CreateDirectory(to);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; sub &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; Directory.GetDirectories(&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;))&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 copyFolder(sub + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, to +&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;+ System.IO.Path.GetFileName(sub));&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;foreach&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; file &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; Directory.GetFiles(&lt;span style="color: #0000ff;"&gt;from&lt;/span&gt;))&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 File.Copy(file, to + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;\\&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt; + System.IO.Path.GetFileName(file), &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&lt;br /&gt;7 打开指定文件夹&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;打开指定文件夹&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="dir"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; openFolderInWindow(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; dir)&lt;br /&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt;             System.Diagnostics.Process.Start(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;explorer.exe&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, dir);&lt;br /&gt;&lt;span style="color: #008080;"&gt;7&lt;/span&gt;         }&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2352289.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352289.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myparamita/archive/2012/02/15/2352182.html</id><title type="text">ArcGIS Engine -- 常用方法</title><summary type="text">空间关系计算两点间距离1 /// &lt;summary&gt;计算两点间距离2 /// &lt;/summary&gt;3 /// &lt;param name="point1"&gt;&lt;/param&gt;4 /// &lt;param name="point2"&gt;&lt;/param&gt;5 /// &lt;returns&gt;&lt;/returns&gt;6 public static double getDistanceOfTwoPoints(ESRI.ArcGIS.Geometry.IPoint point1, ESRI.A</summary><published>2012-02-15T02:27:00Z</published><updated>2012-02-15T02:27:00Z</updated><author><name>因是因非</name><uri>http://www.cnblogs.com/myparamita/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352182.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352182.html"/><content type="html">&lt;p&gt;&lt;strong&gt;空间关系&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('0fcf3684-efa3-4deb-869a-4c2de4d6d4a1')"&gt;&lt;div id="cnblogs_code_open_0fcf3684-efa3-4deb-869a-4c2de4d6d4a1" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;计算两点间距离&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="point1"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="point2"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt; getDistanceOfTwoPoints(ESRI.ArcGIS.Geometry.IPoint point1, ESRI.ArcGIS.Geometry.IPoint point2)&lt;br /&gt;&lt;span style="color: #008080;"&gt;7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;8&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; Math.Sqrt((point1.X - point2.X) * (point1.X - point2.X) + (point1.Y - point2.Y) * (point1.Y - point2.Y));&lt;br /&gt;&lt;span style="color: #008080;"&gt;9&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('389a8546-26b6-4d6b-91b6-1e96110273cb')"&gt;&lt;div id="cnblogs_code_open_389a8546-26b6-4d6b-91b6-1e96110273cb" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; IGeometry geo＝feature.Shape;&lt;br /&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; ((ITransform2D)geo).Move(&lt;span style="color: #800080;"&gt;20&lt;/span&gt;,&lt;span style="color: #800080;"&gt;20&lt;/span&gt;);&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;计算范围&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('4f284dda-4093-4027-8038-aa51a6365f92')"&gt;&lt;div id="cnblogs_code_open_4f284dda-4093-4027-8038-aa51a6365f92" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;得到点集合的n倍Envelope范围&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="points"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="zoomInNumber"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IEnvelope getBigEnvelope(IPointCollection points, &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt; zoomInNumber)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IEnvelope result = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; EnvelopeClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;double&lt;/span&gt; xmax = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;, xmin = &lt;span style="color: #800080;"&gt;999999999999&lt;/span&gt;, ymax = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;, ymin = &lt;span style="color: #800080;"&gt;999999999999&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; i &amp;lt; points.PointCount; i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 ESRI.ArcGIS.Geometry.IPoint p = points.get_Point(i);&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (xmax &amp;lt; p.X) xmax = p.X;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (ymax &amp;lt; p.Y) ymax = p.Y;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (xmin &amp;gt; p.X) xmin = p.X;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (ymin &amp;gt; p.Y) ymin = p.Y;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             result.XMax = xmax + xmax - xmin;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             result.XMin = xmin - xmax + xmin;&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;             result.YMax = ymax + ymax - ymin;&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             result.YMin = ymin - ymax + ymin;&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; result;&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;查询&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('ded584f0-a774-443e-8169-574ba3f96091')"&gt;&lt;div id="cnblogs_code_open_ded584f0-a774-443e-8169-574ba3f96091" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;查询要素&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt; 多个要素取其union后的范围&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;地图&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="layer"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;矢量图层&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="where"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;查询条件&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IGeometry queryUnionGeometry(IMap map, IFeatureLayer layer, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;where&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (layer == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             IFeatureClass featCls = layer.FeatureClass;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             IQueryFilter filter = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; QueryFilterClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             filter.WhereClause = &lt;span style="color: #0000ff;"&gt;where&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             IFeatureCursor cursor = featCls.Search(filter, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             IFeature feature = cursor.NextFeature();&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (feature == &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             Boolean isFirstFeature = &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;             IGeometry union = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;while&lt;/span&gt; (feature != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (isFirstFeature)&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                     isFirstFeature = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                     union = feature.Shape;&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;                     union=((ITopologicalOperator)union).Union(feature.Shape);&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                 feature = cursor.NextFeature();&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; union; ;&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;查找图层&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('c3de13a8-a67d-491e-a5ab-a30fe844fd1a')"&gt;&lt;div id="cnblogs_code_open_c3de13a8-a67d-491e-a5ab-a30fe844fd1a" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;得到地图上图层列表&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IEnumLayer getFeatureLayers(IMap map)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             UID uid = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; UIDClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{6CA416B1-E160-11D2-9F4E-00C04F6BC78E} IDataLayer （all）&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{40A9E885-5533-11d0-98BE-00805F7CED21} IFeatureLayer&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{E156D7E5-22AF-11D3-9F99-00C04F6BC78E} IGeoFeatureLayer&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{34B2EF81-F4AC-11D1-A245-080009B6F22B} IGraphicsLayer&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{5CEAE408-4C0A-437F-9DB3-054D83919850} IFDOGraphicsLayer&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{0C22A4C7-DAFD-11D2-9F46-00C04F6BC78E} ICoverageAnnotationLayer&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;{EDAD6644-1810-11D1-86AE-0000F8751720} IGroupLayer&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             uid.Value = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;{40A9E885-5533-11d0-98BE-00805F7CED21}&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;FeatureLayer&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             IEnumLayer layers = map.get_Layers(uid, &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; layers;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('fe465376-5f41-4b70-914a-c8c150796eac')"&gt;&lt;div id="cnblogs_code_open_fe465376-5f41-4b70-914a-c8c150796eac" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;根据名称在地图上查找对应矢量图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="layerName"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IFeatureLayer getFeatureLayer(IMap map,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; layerName)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IEnumLayer layers = getFeatureLayers(map);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             layers.Reset();&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             ILayer layer = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;while&lt;/span&gt; ((layer = layers.Next()) != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (layer.Name == layerName)&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; layer &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IFeatureLayer;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;选择要素集&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('74c79a8f-ffe1-487a-95f1-a7f0bdcf63e8')"&gt;&lt;div id="cnblogs_code_open_74c79a8f-ffe1-487a-95f1-a7f0bdcf63e8" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;得到指定图层上的选中的features&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;地图&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="layerName"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;图层名&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;returns&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;IFeatureCursor&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IFeatureCursor getSelectFeatures(IMap map, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; layerName)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IFeatureLayer featureLayer = Util.getFeatureLayer(map, layerName); ;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;得到选中的feature&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             IFeatureClass inputFeatureClass = featureLayer.FeatureClass;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             IDataset inputDataset = (IDataset)inputFeatureClass;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             IDatasetName inputDatasetName = (IDatasetName)inputDataset.FullName;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             IFeatureSelection featureSelection = (IFeatureSelection)featureLayer;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             ISelectionSet selectionSet = featureSelection.SelectionSet;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             ICursor cursor;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             selectionSet.Search(&lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;out&lt;/span&gt; cursor);&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             IFeatureCursor featureCursor = (IFeatureCursor)cursor;&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; featureCursor;&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;加载数据&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('fe7bae03-32a0-4aae-8a23-889c95e8706e')"&gt;&lt;div id="cnblogs_code_open_fe7bae03-32a0-4aae-8a23-889c95e8706e" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;将GDB中数据添加至地图&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;地图IMap&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="gdbPath"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;GDB路径&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="name"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;数据名称&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; addFeatLayerToMapFromGDB(IMap map,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; gdbPath,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; name)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IWorkspaceFactory toWsf = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FileGDBWorkspaceFactoryClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             IFeatureWorkspace toFeatWs = (IFeatureWorkspace)toWsf.OpenFromFile(gdbPath, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             IFeatureClass featCls = toFeatWs.OpenFeatureClass(name);&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             ILayer layer=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FeatureLayerClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             layer.Name = name;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             ((IGeoFeatureLayer)layer).FeatureClass=featCls;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (featCls != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;) {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 map.AddLayer(layer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('7138abed-90bf-4b2a-9c6b-389e8033092e')"&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;新建shapefile文件/GDB&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('637598c5-764f-4189-b72e-7ce6102faba4')"&gt;&lt;div id="cnblogs_code_open_637598c5-764f-4189-b72e-7ce6102faba4" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;创建点shapefile&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="filePath"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;target point shapefile path&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fileName"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;target point shapefile name&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; createPointShapefile(IMap map, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; filePath, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; fileName)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;建立shape字段&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IFields pFields = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FieldsClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             IFieldsEdit pFieldsEdit = pFields &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IFieldsEdit;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             IField pField = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FieldClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             IFieldEdit pFieldEdit = pField &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IFieldEdit;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             pFieldEdit.Name_2 = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Shape&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             pFieldEdit.Type_2 = esriFieldType.esriFieldTypeGeometry;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;设置geometry definition&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             IGeometryDef pGeometryDef = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; GeometryDefClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             IGeometryDefEdit pGeometryDefEdit = pGeometryDef &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IGeometryDefEdit;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             pGeometryDefEdit.GeometryType_2 = esriGeometryType.esriGeometryPoint;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;点、线、面&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             pGeometryDefEdit.SpatialReference_2 = map.SpatialReference;&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             pFieldEdit.GeometryDef_2 = pGeometryDef;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             pFieldsEdit.AddField(pField);&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;新建字段&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             pField = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FieldClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             pFieldEdit = pField &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IFieldEdit;&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;             pFieldEdit.Length_2 = &lt;span style="color: #800080;"&gt;10&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;             pFieldEdit.Name_2 = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;id&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;             pFieldEdit.AliasName_2 = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;id&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;             pFieldEdit.Type_2 = esriFieldType.esriFieldTypeSmallInteger;&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;             pFieldsEdit.AddField(pField);&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;继续增加其它字段&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;             IWorkspaceFactory pWorkspaceFactory = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; ShapefileWorkspaceFactory();&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;             IFeatureWorkspace pFeatureWorkspace = pWorkspaceFactory.OpenFromFile(filePath, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IFeatureWorkspace;&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;IWorkspaceFactory pWorkspaceFactory = new FileGDBWorkspaceFactoryClass();&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;IFeatureWorkspace pFeatureWorkspace = pWorkspaceFactory.OpenFromFile(filePath, 0) as IFeatureWorkspace;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = fileName.IndexOf(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;.shp&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (i == -&lt;span style="color: #800080;"&gt;1&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;                 pFeatureWorkspace.CreateFeatureClass(fileName + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;.shp&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, pFields, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, esriFeatureType.esriFTSimple, &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Shape&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, &lt;span style="color: #800000;"&gt;""&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                 pFeatureWorkspace.CreateFeatureClass(fileName, pFields, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, esriFeatureType.esriFTSimple, &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Shape&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, &lt;span style="color: #800000;"&gt;""&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;MessageBox.Show("OK");&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/strong&gt;将选中要素另存至GDB&lt;/p&gt;&lt;p&gt;另存为shapefile类似，修改workspacefactory为ShapefileWorkspaceFactoryClass，修改对应路径即可。&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('969aa803-5064-4c81-baeb-4b912bc8d4ea')"&gt;&lt;div id="cnblogs_code_open_969aa803-5064-4c81-baeb-4b912bc8d4ea" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;将选中的line feature作为线文件存至gdb&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;  &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;  &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="featureLayer"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;select layer&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;  &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="gdbPath"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;gdb路径&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;  &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="name"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;文件名称&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;          &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; saveSelectLineFeatureToGDB(IMap map,IFeatureLayer featureLayer,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; gdbPath,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; name)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;          {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;              IFeatureClass inputFeatureClass = featureLayer.FeatureClass;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;              IDataset inputDataset = (IDataset)inputFeatureClass;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;              IDatasetName inputDatasetName = (IDatasetName)inputDataset.FullName;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;              &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; Get the layer's selection set. &lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;              IFeatureSelection featureSelection = (IFeatureSelection)featureLayer;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;              ISelectionSet selectionSet = featureSelection.SelectionSet;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;              IPropertySet ps = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; PropertySetClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;              ps.SetProperty(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;DATABASE&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, gdbPath);&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;              IWorkspaceFactory wsf = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FileGDBWorkspaceFactoryClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;              IWorkspace ws = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;              &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;              {&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                  ws = wsf.Open(ps, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;              }&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;              &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (Exception e)&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;              {&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                  Console.WriteLine(e.Message);&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;              }&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;              IDataset ds = (IDataset)ws;&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;              IWorkspaceName wsName = (IWorkspaceName)ds.FullName;&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;              IFeatureClassName featClsName = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FeatureClassNameClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;              IDatasetName dsName = (IDatasetName)featClsName;&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;              dsName.WorkspaceName = wsName;&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;              dsName.Name = name;&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;              &lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;              &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt;/ Use the IFieldChecker interface to make sure all of the field names are valid for a shapefile. &lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;              IFieldChecker fieldChecker = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FieldCheckerClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;              IFields shapefileFields = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;              IEnumFieldError enumFieldError = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;              fieldChecker.InputWorkspace = inputDataset.Workspace;&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt;              fieldChecker.ValidateWorkspace = ws;&lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;              fieldChecker.Validate(inputFeatureClass.Fields, &lt;span style="color: #0000ff;"&gt;out&lt;/span&gt; enumFieldError, &lt;span style="color: #0000ff;"&gt;out&lt;/span&gt; shapefileFields);&lt;br /&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;              &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; At this point, reporting/inspecting invalid fields would be useful, but for this example it's omitted.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt; &lt;span style="color: #008000;"&gt; &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; We also need to retrieve the GeometryDef from the input feature class. &lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;              &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; shapeFieldPosition = inputFeatureClass.FindField(inputFeatureClass.ShapeFieldName);&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt;              IFields inputFields = inputFeatureClass.Fields;&lt;br /&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;              IField shapeField = inputFields.get_Field(shapeFieldPosition);&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt;              IGeometryDef geometryDef = shapeField.GeometryDef;&lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;              IGeometryDef pGeometryDef = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; GeometryDef();&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;              IGeometryDefEdit pGeometryDefEdit = pGeometryDef &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IGeometryDefEdit;&lt;br /&gt;&lt;span style="color: #008080;"&gt;55&lt;/span&gt;              pGeometryDefEdit.GeometryType_2 = esriGeometryType.esriGeometryPolyline;&lt;br /&gt;&lt;span style="color: #008080;"&gt;56&lt;/span&gt;              pGeometryDefEdit.SpatialReference_2 = map.SpatialReference;&lt;br /&gt;&lt;span style="color: #008080;"&gt;57&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;58&lt;/span&gt;              &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; Now we can create a feature data converter. &lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;59&lt;/span&gt;              IFeatureDataConverter2 featureDataConverter2 = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FeatureDataConverterClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;60&lt;/span&gt;              IEnumInvalidObject enumInvalidObject = featureDataConverter2.ConvertFeatureClass(inputDatasetName, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;,&lt;br /&gt;&lt;span style="color: #008080;"&gt;61&lt;/span&gt;                  selectionSet, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, featClsName, pGeometryDef, shapefileFields, &lt;span style="color: #800000;"&gt;""&lt;/span&gt;, &lt;span style="color: #800080;"&gt;1000&lt;/span&gt;, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;62&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;63&lt;/span&gt;              &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; Again, checking for invalid objects would be useful at this point...&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;64&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080;"&gt;65&lt;/span&gt;              inputFeatureClass = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;66&lt;/span&gt;              ds = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;67&lt;/span&gt;              ws = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;68&lt;/span&gt;              wsf = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;69&lt;/span&gt;          }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;编辑&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('f83e4772-3a4b-4b17-affd-e064d4a477e1')"&gt;&lt;div id="cnblogs_code_open_f83e4772-3a4b-4b17-affd-e064d4a477e1" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;加载目标点图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;IWorkspaceFactory toWsf = new ShapefileWorkspaceFactoryClass();&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;             IWorkspaceFactory toWsf = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FileGDBWorkspaceFactoryClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;             IFeatureWorkspace toFeatWs = (IFeatureWorkspace)toWsf.OpenFromFile(fullGdbPath, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;); ;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;             IFeatureClass toFeatCls = toFeatWs.OpenFeatureClass(pointLayerName);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;编辑目标点图层&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IWorkspaceEdit toEdit = (IWorkspaceEdit)toFeatWs;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;try&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;                 toEdit.StartEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                 toEdit.StartEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 IQueryFilter filter=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; QueryFilterClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                 filter.WhereClause=&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;id=0&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                 IFeatureCursor cursor = toFeatCls.Search(filter, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                 IFeature feature = cursor.NextFeature();&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;while&lt;/span&gt;(feature != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                     feature.Delete();&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                     feature = cursor.NextFeature();&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;catch&lt;/span&gt; (Exception e)&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                 Console.WriteLine(e.Message);&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;finally&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;                 toEdit.StopEditOperation();&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                 toEdit.StopEditing(&lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;             }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('2da06df5-1708-4bba-af99-15910732eb2c')"&gt;&lt;div id="cnblogs_code_open_2da06df5-1708-4bba-af99-15910732eb2c" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; IFeature toFeature = toFeatCls.CreateFeature();&lt;br /&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt;                         ESRI.ArcGIS.Geometry.IPoint newPoint = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; PointClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt;                         newPoint.PutCoords(fromPoint.X, fromPoint.Y);&lt;br /&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt;                         toFeature.Shape = newPoint;&lt;br /&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt;                         toFeature.set_Value(&lt;span style="color: #800080;"&gt;2&lt;/span&gt;, nowPointId);&lt;br /&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt;                         toFeature.Store();&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;label&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('1449ad2f-a2bc-4373-8b00-13c956c98fd7')"&gt;&lt;div id="cnblogs_code_open_1449ad2f-a2bc-4373-8b00-13c956c98fd7" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;显示label&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="featLayer"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="field"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; displayLabel(IMap map, IGeoFeatureLayer featLayer, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; field)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             featLayer.DisplayAnnotation = &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             IAnnotateLayerPropertiesCollection pAnnProCol = featLayer.AnnotationProperties;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             ILabelEngineLayerProperties pLabelEngine = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             IAnnotateLayerProperties prop;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             IBasicOverposterLayerProperties pBasicOverposterLayerProps = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; BasicOverposterLayerProperties();&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             pBasicOverposterLayerProps.NumLabelsOption = esriBasicNumLabelsOption.esriOneLabelPerShape;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             ITextSymbol symbol = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; TextSymbolClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             IColor c = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; RgbColorClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             c.RGB = &lt;span style="color: #800080;"&gt;123&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             symbol.Color = c;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             symbol.Size = &lt;span style="color: #800080;"&gt;4&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             IBasicOverposterLayerProperties bo = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; BasicOverposterLayerPropertiesClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             IPointPlacementPriorities ipp = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; PointPlacementPrioritiesClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;             ipp.BelowCenter = &lt;span style="color: #800080;"&gt;1&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             bo.PointPlacementPriorities = ipp;&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; i &amp;lt; pAnnProCol.Count; i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;                 IElementCollection ec = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; ElementCollectionClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;                 pAnnProCol.QueryItem(i, &lt;span style="color: #0000ff;"&gt;out&lt;/span&gt; prop, &lt;span style="color: #0000ff;"&gt;out&lt;/span&gt; ec, &lt;span style="color: #0000ff;"&gt;out&lt;/span&gt; ec);&lt;br /&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;                 pLabelEngine = (ILabelEngineLayerProperties)prop;&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                 pLabelEngine.Expression = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;[&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt; + field + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;]&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                 pLabelEngine.Symbol = symbol;&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt;                 pLabelEngine.BasicOverposterLayerProperties = bo;&lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;             ITrackCancel pCon = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; CancelTracker();&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt;             pCon.Continue();&lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;             featLayer.Draw(esriDrawPhase.esriDPAnnotation, ((IActiveView)map).ScreenDisplay, pCon);&lt;br /&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('32fbecf5-99aa-44f0-af4f-fec0bb05bd16')"&gt;&lt;div id="cnblogs_code_open_32fbecf5-99aa-44f0-af4f-fec0bb05bd16" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;label2Annotation&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fullGdbPath"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="featLayer"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="displayField"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; ConvertLabelsToGDBAnnotationSingleLayer(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; fullGdbPath,IFeatureLayer featLayer,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; displayField)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IMap map = m_map;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             IPropertySet ps = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; PropertySetClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             ps.SetProperty(&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;DATABASE&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, fullGdbPath);&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             IWorkspaceFactory wsf = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; FileGDBWorkspaceFactoryClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             IWorkspace ws = wsf.Open(ps, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             IFeatureWorkspace featWs = (IFeatureWorkspace)ws;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             IGeoFeatureLayer pGeoFeatureLayer = featLayer &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IGeoFeatureLayer;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             IFeatureClass featCls = pGeoFeatureLayer.FeatureClass;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;设置指定字段为label字段并显示&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             Util.displayLabel(map, pGeoFeatureLayer, displayField);&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;             ((IActiveView)map).PartialRefresh(esriViewDrawPhase.esriViewForeground, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             IConvertLabelsToAnnotation pConvertLabelsToAnnotation = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                 ConvertLabelsToAnnotationClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             ITrackCancel pTrackCancel = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; CancelTrackerClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;27&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Change global level options for the conversion by sending in different parameters to the next line.&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;28&lt;/span&gt;             pConvertLabelsToAnnotation.Initialize(map,&lt;br /&gt;&lt;span style="color: #008080;"&gt;29&lt;/span&gt;                 esriAnnotationStorageType.esriDatabaseAnnotation,&lt;br /&gt;&lt;span style="color: #008080;"&gt;30&lt;/span&gt;                 esriLabelWhichFeatures.esriAllFeatures, &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;, pTrackCancel, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;31&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;32&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (featCls != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;33&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;34&lt;/span&gt;                 IDataset pDataset = featCls &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IDataset;&lt;br /&gt;&lt;span style="color: #008080;"&gt;35&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;36&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Add the layer information to the converter object. Specify the parameters of the output annotation feature class here as well.&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;37&lt;/span&gt;                 pConvertLabelsToAnnotation.AddFeatureLayer(pGeoFeatureLayer,&lt;br /&gt;&lt;span style="color: #008080;"&gt;38&lt;/span&gt;                     pGeoFeatureLayer.Name + &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;_anno&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, featWs,&lt;br /&gt;&lt;span style="color: #008080;"&gt;39&lt;/span&gt;                     featCls.FeatureDataset, &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;,&lt;br /&gt;&lt;span style="color: #008080;"&gt;40&lt;/span&gt;                     &lt;span style="color: #800000;"&gt;""&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;41&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;42&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Do the conversion.&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;43&lt;/span&gt;                 pConvertLabelsToAnnotation.ConvertLabels();&lt;br /&gt;&lt;span style="color: #008080;"&gt;44&lt;/span&gt;                 IEnumLayer pEnumLayer = pConvertLabelsToAnnotation.AnnoLayers;&lt;br /&gt;&lt;span style="color: #008080;"&gt;45&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;46&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Turn off labeling for the layer converted.&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;47&lt;/span&gt;                 pGeoFeatureLayer.DisplayAnnotation = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;48&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;49&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Add the result annotation layer to the map.&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;50&lt;/span&gt;                 map.AddLayers(pEnumLayer, &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;51&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;52&lt;/span&gt;                 &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Refresh the map to update the display.&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;53&lt;/span&gt;                 IActiveView pActiveView = map &lt;span style="color: #0000ff;"&gt;as&lt;/span&gt; IActiveView;&lt;br /&gt;&lt;span style="color: #008080;"&gt;54&lt;/span&gt;                 pActiveView.Refresh();&lt;br /&gt;&lt;span style="color: #008080;"&gt;55&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;56&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;GP&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;转换cad时，从shp转换cad不成功，从gdb中转换成功，原因不知。&lt;/p&gt;&lt;p&gt;GP:createCadXData需要在转换cad之前执行，给cad添加扩展属性&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('626ce6c3-9dc5-4336-8f6f-811c9793bd9d')"&gt;&lt;div id="cnblogs_code_open_626ce6c3-9dc5-4336-8f6f-811c9793bd9d" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;GP:shp2cad&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fromFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="toFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; convertGdb2Cad(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; fromFile, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; toFile)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             Geoprocessor GP = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Geoprocessor();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             ESRI.ArcGIS.ConversionTools.ExportCAD tool = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;                 ESRI.ArcGIS.ConversionTools.ExportCAD();&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;tool.in_features = "d:/lzx/data/road/test.gdb/line_Annod";&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt; &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;tool.Output_File = "d:/lzx/data/kk2.dwg";&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             tool.in_features = fromFile;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             tool.Output_File = toFile;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             tool.Output_Type = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;DWG_R2004&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             GP.Execute(tool, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;MessageBox.Show("shp2cad ok");&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('532586ba-2ecb-4159-8f45-b481f319217d')"&gt;&lt;div id="cnblogs_code_open_532586ba-2ecb-4159-8f45-b481f319217d" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;GP:shp export to gdb&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fromFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="toFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; convertShp2Gdb(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; inputFeatures, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; outputGdb, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; outputName)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             Geoprocessor GP = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Geoprocessor();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             ESRI.ArcGIS.ConversionTools.FeatureClassToGeodatabase tool = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; ESRI.ArcGIS.ConversionTools.FeatureClassToGeodatabase();&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             tool.Input_Features = inputFeatures;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             tool.Output_Geodatabase = outputGdb;&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             GP.Execute(tool, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;MessageBox.Show("shp2gdb ok");&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('1425f73d-e206-4001-9806-f35d41e965e8')"&gt;&lt;div id="cnblogs_code_open_1425f73d-e206-4001-9806-f35d41e965e8" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;将线文件的节点转换为点文件&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt;&lt;span style="color: #008000;"&gt; 使用gp&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fromFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="toFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; convertFeatureVerticesToPoints(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; fromFile, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; toFile)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt; Initialize the geoprocessor. &lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             Geoprocessor GP = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Geoprocessor();&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             ESRI.ArcGIS.DataManagementTools.FeatureVerticesToPoints tool = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;                 ESRI.ArcGIS.DataManagementTools.FeatureVerticesToPoints();&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             tool.in_features = fromFile;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             tool.out_feature_class = toFile;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             tool.point_location = &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;BOTH_ENDS&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             GP.Execute(tool, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('e4aa3680-b471-4a70-8e7c-c7e2b7848a1e')"&gt;&lt;div id="cnblogs_code_open_e4aa3680-b471-4a70-8e7c-c7e2b7848a1e" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;GP:createCadXData&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="fromFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="toFile"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; createCadXData(&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; fromFile,&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; field)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             Geoprocessor GP = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; Geoprocessor();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             CreateCADXData tool = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; CreateCADXData(fromFile, field, &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;ArcGIS&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;, &lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;ADE&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             GP.Execute(tool, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;MessageBox.Show(" ok");&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;地图显示/刷新&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('cabafea3-6aa8-49a2-9b58-f4d9aaebeb3d')"&gt;&lt;div id="cnblogs_code_open_cabafea3-6aa8-49a2-9b58-f4d9aaebeb3d" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;清除选择集并刷新&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; clearSelectionInMap(IMap map)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;             IActiveView activeView = (IActiveView)map;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             activeView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             map.ClearSelection();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;需要在前后刷新2次&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             activeView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('88fa592d-d5ee-4e7c-bb84-7750f09b81a3')"&gt;&lt;div id="cnblogs_code_open_88fa592d-d5ee-4e7c-bb84-7750f09b81a3" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;删除地图中除指定图层组外的其他图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="layerNames"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;不删除的图层列表&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; clearLayers(IMap map, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt;[] layerNames)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             Boolean isToDel = &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IEnumLayer layers = Util.getFeatureLayers(map);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             layers.Reset();&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             ILayer layer = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;while&lt;/span&gt; ((layer = layers.Next()) != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; (&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; i = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; i &amp;lt; layerNames.Length; i++)&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                     &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (layer.Name == layerNames[i])&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                     {&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                         isToDel = &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;                     }&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (isToDel)&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;                     map.DeleteLayer(layer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;                     System.Runtime.InteropServices.Marshal.ReleaseComObject(layer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;25&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;26&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('c68c3612-0345-42ff-87f8-7e66c5061b54')"&gt;&lt;div id="cnblogs_code_open_c68c3612-0345-42ff-87f8-7e66c5061b54" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;删除地图中除指定图层外的其他图层&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="map"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="layerNames"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;不删除的图层列表&lt;/span&gt;&lt;span style="color: #808080;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; clearLayers(IMap map, &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; layerName)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             Boolean isToDel = &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             IEnumLayer layers = Util.getFeatureLayers(map);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             layers.Reset();&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             ILayer layer = &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;             &lt;span style="color: #0000ff;"&gt;while&lt;/span&gt; ((layer = layers.Next()) != &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             {&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;                 &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (layer.Name != layerName)&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;                 {&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;                     map.DeleteLayer(layer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;                     System.Runtime.InteropServices.Marshal.ReleaseComObject(layer);&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;                 }&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             }&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('deebd9de-6784-4b5b-85c0-fbd23c5a2c00')"&gt;&lt;div id="cnblogs_code_open_deebd9de-6784-4b5b-85c0-fbd23c5a2c00" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt;         &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;缩放到指定要素并高亮显示&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="av"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; &lt;span style="color: #808080;"&gt;///&lt;/span&gt; &lt;span style="color: #808080;"&gt;&amp;lt;param name="env"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;         &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; zoomAndHighlight(IActiveView av, IGeometry geo)&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;         {&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;             av.GraphicsContainer.DeleteAllElements();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;             av.Extent = geo.Envelope;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt;             IElement element = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; LineElementClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;             element.Geometry = geo;&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;             IRgbColor color = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; RgbColorClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;             color.Red = &lt;span style="color: #800080;"&gt;255&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt;             color.Green = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;             color.Blue = &lt;span style="color: #800080;"&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt;             ISimpleLineSymbol symbol = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; SimpleLineSymbolClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;17&lt;/span&gt;             symbol.Color = (IColor)color;&lt;br /&gt;&lt;span style="color: #008080;"&gt;18&lt;/span&gt;             symbol.Width = &lt;span style="color: #800080;"&gt;2&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt;19&lt;/span&gt;             symbol.Style = esriSimpleLineStyle.esriSLSSolid;&lt;br /&gt;&lt;span style="color: #008080;"&gt;20&lt;/span&gt;             ((ILineElement)element).Symbol = (ILineSymbol)symbol;&lt;br /&gt;&lt;span style="color: #008080;"&gt;21&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;22&lt;/span&gt;             av.GraphicsContainer.AddElement(element, &lt;span style="color: #800080;"&gt;0&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;23&lt;/span&gt;             av.Refresh();&lt;br /&gt;&lt;span style="color: #008080;"&gt;24&lt;/span&gt;         }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Element&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('08611c2a-d3b9-4a89-8183-5b370a14cd93')"&gt;&lt;div id="cnblogs_code_open_08611c2a-d3b9-4a89-8183-5b370a14cd93" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IColor getColor(&lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; R, &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; G, &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; B){&lt;br /&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt;     IRgbColor color=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; RgbColorClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt;     color.Red=R;&lt;br /&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt;     color.Green=G;&lt;br /&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt;     color.Blue=B;&lt;br /&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; (IColor)color;&lt;br /&gt;&lt;span style="color: #008080;"&gt;7&lt;/span&gt; }&lt;/div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('d9075893-bcf8-4561-8cf9-05897713d696')"&gt;&lt;div id="cnblogs_code_open_d9075893-bcf8-4561-8cf9-05897713d696" class="cnblogs_code_hide"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; IElement getFillShapeElement(IGeometry geo){&lt;br /&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt;     IElement element=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; PolygonElementClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt;     element.Geometry=geo;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt;     &lt;br /&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt;     ISimpleLineSymbol symbol=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; SimpleLineSymbolClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt;     symbol.Color=getColor(&lt;span style="color: #800080;"&gt;255&lt;/span&gt;,&lt;span style="color: #800080;"&gt;0&lt;/span&gt;,&lt;span style="color: #800080;"&gt;0&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt;     symbol.Width=&lt;span style="color: #800080;"&gt;2&lt;/span&gt;;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt;     symbol.Style=esriSimpleLneStyle.esriSLSolid;&lt;br /&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt;     ISimpleFillSymbol fillSymbol=&lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; SimpleFillSymbolClass();&lt;br /&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt;     fillSymbol.outline=(ILineSymbol)symbol;&lt;br /&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt;     fillSymbol.Color=getColor(&lt;span style="color: #800080;"&gt;255&lt;/span&gt;,&lt;span style="color: #800080;"&gt;250&lt;/span&gt;,&lt;span style="color: #800080;"&gt;200&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008080;"&gt;13&lt;/span&gt;     ((IFillShapeElement)element).symbol=(IFillSymbol)fillSymbol;&lt;br /&gt;&lt;span style="color: #008080;"&gt;14&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #008080;"&gt;15&lt;/span&gt;     &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; element;&lt;br /&gt;&lt;span style="color: #008080;"&gt;16&lt;/span&gt; }&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myparamita/aggbug/2352182.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myparamita/archive/2012/02/15/2352182.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
