[gdal-dev] RE Python ogr GetFieldAsString problem

Steve.Toutant at inspq.qc.ca Steve.Toutant at inspq.qc.ca
Wed May 13 13:20:09 PDT 2015


More info.....
ogr2ogr --version = GDAL 1.10.1, released 2013/08/26
python --version = Python 2.7.3

I have modified my script to get the field type
while feat is not None:
          feat_defn = layer.GetLayerDefn()
          field_defn = 
feat_defn.GetFieldDefn(feat_defn.GetFieldIndex(attribut))
          print field_defn.GetType()
          if field_defn.GetType() == ogr.OFTReal:
            print "%.4f" % feat.GetFieldAsDouble(attribut)
          output.add(feat.GetFieldAsString(attribut))
          feat = layer.GetNextFeature()

It detects that it is a real, But GetFieldAsDouble also truncate the value 
at the comma



Steve Toutant/INSPQ/SSSS 
2015-05-13 15:11

A
gdal-dev at lists.osgeo.org
cc

Objet
Python ogr GetFieldAsString problem








I'm trying to parse a GML and read all the values of an attribute.
Example
<gml:featureMember> 
      <ms:SMDVDP_STAT_METE fid="SMDVDP_STAT_METE.2153"> 
        <ms:LONG_STAT>-64,2131</ms:LONG_STAT> 
      </ms:SMDVDP_STAT_METE> 
    </gml:featureMember> 

DescribeFeatureType for this layer returns 
<element name="LONG_STAT" minOccurs="0" type="double"/> 

wfs_ds = ogr.Open(tmp_file.name)  #tmp_file.name is the response of a WFS 
getFeature request
layer = wfs_ds.GetLayerByName('SMDVDP_STAT_METE ')
feat = layer.GetNextFeature()
      while feat is not None:
          output.add(feat.GetFieldAsString('LONG_STAT'))
          feat = layer.GetNextFeature()

(At runtime, the WFs, layer and attribute can be anything of any type. And 
decimal separator, can be ',' or '.')
The problem is that feat.GetFieldAsString('LONG_STAT') truncate the string 
to the comma

So instead of having -64,2131, I get -64 in the output

What is the appropriate way to get the value of an attribute?

thanks you!





-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20150513/bc2afd11/attachment.html>


More information about the gdal-dev mailing list