【基于arcpy获取图层字段】

class Fields():
    def get(self):
        logFilePath = ''
        print('执行获取图层字段接口')
        print('开始')
        
        sde_file = 'D:/127.0.0.1.sde'
        # sde_file = 'D:/data.gdb'
        # sde_file = 'D:/data.mdb'

        layername = 'DLTB'
        
        data_layer = sde_file + "/" + layername
        if not arcpy.Exists(data_layer):
            self.write('[{"msg":"data_layer<' + data_layer + '> is not Exists."}]')
            m_cfg.writelog(logFilePath, 'data_layer<' + data_layer + '> is not Exists.')
            return

        results = []
        fields = arcpy.ListFields(data_layer, field_type='All')
        for field in fields:
            if not field.type in ['OID'] and not field.name in ['SHAPE.AREA', 'SHAPE.LEN', 'SHAPE_Area', 'SHAPE_Length',
                                                            'SHAPE_AREA', 'SHAPE_LEN','SHAPE']:

                results.append({
                    "name": field.name, 
                    "aliasName": field.aliasName, 
                    "baseName":field.baseName,
                    "domain":field.domain,
                    "editable":field.editable,
                    "isNullable":field.isNullable,
                    "length":field.length, 
                    "scale": field.scale,
                    "precision": field.precision,
                    "required":field.required,
                    "type": field.type
                    })
        self.write(json.dumps(results))
        print('图层字段获取成功。')
        print( '结束')

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值