<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none"><!--P{margin-top:0;margin-bottom:0;} p, li
        {white-space:pre-wrap}--></style>
</head>
<body dir="ltr" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Hi Even,</p>
<p><br>
</p>
<p>Yeah, should have been reading the documents more closely. This keeps the leading zeroes.<br>
</p>
<p><br>
</p>
<p>ogrinfo csvtext.csv -oo autodetect_type=yes -oo quoted_fields_as_string=yes -al<br>
INFO: Open of `csvtext.csv'<br>
      using driver `CSV' successful.<br>
<br>
Layer name: csvtext<br>
Geometry: None<br>
Feature Count: 1<br>
Layer SRS WKT:<br>
(unknown)<br>
field_1: String (0.0)<br>
field_2: Integer (0.0)<br>
field_3: Integer (0.0)<br>
field_4: Real (0.0)<br>
field_5: String (0.0)<br>
OGRFeature(csvtext):1<br>
  field_1 (String) = 00012<br>
  field_2 (Integer) = 12345<br>
  field_3 (Integer) = 1234<br>
  field_4 (Real) = 234.65<br>
  field_5 (String) = text</p>
<p><br>
</p>
<p>-Jukka-<br>
</p>
<p><br>
</p>
<div style="font-family:'monospace'; font-size:9pt; font-weight:400; font-style:normal">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>Lähettäjä:</b> Even Rouault <even.rouault@spatialys.com><br>
<b>Lähetetty:</b> 18. elokuuta 2017 14:30<br>
<b>Vastaanottaja:</b> gdal-dev@lists.osgeo.org<br>
<b>Kopio:</b> Rahkonen Jukka (MML)<br>
<b>Aihe:</b> Re: [gdal-dev] Autodetect "0012" as string in CSV</font>
<div> </div>
</div>
<div>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
On vendredi 18 août 2017 10:59:47 CEST Rahkonen Jukka (MML) wrote:</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> Hi,</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> The schema of a CSV file like this</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> "00012",012345,1234,234.65,"text"</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> is autodetected this way:</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> ogrinfo csvtext.csv -oo autodetect_type=yes -al</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> INFO: Open of `csvtext.csv'</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> using driver `CSV' successful.</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> Layer name: csvtext</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> Geometry: None</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> Feature Count: 1</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> Layer SRS WKT:</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> (unknown)</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_1: Integer (0.0)</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_2: Integer (0.0)</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_3: Integer (0.0)</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_4: Real (0.0)</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_5: String (0.0)</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> OGRFeature(csvtext):1</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_1 (Integer) = 12</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_2 (Integer) = 12345</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_3 (Integer) = 1234</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_4 (Real) = 234.65</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> field_5 (String) = text</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> It would be good to autodetect also "00012" as a string. Double quotes are</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> correctly stripped of from "text" so I suppose that GDAL already knows that</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
> they are used for enclosing strings.</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
 </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
Jukka,</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
 </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
Add -oo QUOTED_FIELDS_AS_STRING=YES</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
 </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
I don't remember the rationale for the default of this option to be NO. Presumably the use case while developping that was with a file generated by a CSV exporter always surrounding field content by double quotes.</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
 </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
Even</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
 </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
-- </p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
Spatialys - Geospatial professional services</p>
<p style="margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; text-indent:0px">
http://www.spatialys.com</p>
</div>
</div>
</body>
</html>