2013-07-21 51 views
4

似乎在ogr2ogr中對流式輸入的支持很弱。例如,我爲什麼可以這樣做:ogr2ogr中的VSI File API支持

curl "http://data.usgin.org/arizona/wfs?service=WFS&version=1.1.0& 
request=GetFeature&typeName=azgs:activefaults&maxFeatures=10" | 
ogr2ogr -f "KML" /vsistdout/ /vsistdin/ 

...但我不能做到這一點:

curl "http://data.usgin.org/arizona/wfs?service=WFS&version=1.1.0& 
request=GetFeature&typeName=azgs:activefaults&maxFeatures=10& 
outputformat=application/json" | ogr2ogr -f "KML" /vsistdout/ /vsistdin/ 

的第一個請求使用爲源層的「世界糧食首腦會議」驅動程序和第二個請求使用源層的「GeoJSON」驅動程序。第一個工作正常,但第二個給我:

ERROR 1: GeoJSON parsing error: unexpected end of data (at offset 6000) 
ERROR 4: Failed to read GeoJSON data 
FAILURE: 
Unable to open datasource `/vsistdin/' with the following drivers. 

回答

0

什麼版本的GDAL你使用​​?這似乎是固定的gdal-2.2.0,因爲這個命令的工作似乎工作:

$ ogr2ogr --version 
GDAL 2.2.0, released 2017/04/28 

$ curl "http://data.usgin.org/arizona/wfs?service=WFS&version=1.1.0&request=GetFeature&typeName=azgs:activefaults&maxFeatures=10&outputformat=application/json" | ogr2ogr -f "KML" /vsistdout/ /vsistdin/