Criando CSV com geometria como WKT no QGIS (com a escolha do delimitador de campo)

12

Existe uma maneira de escolher o delimitador de campo ao exportar um CSV com geometria como wkt no QGIS?

Eu tenho um shapefile com furos de rosca e gostaria de exportá-lo como um CSV. É para um parceiro cujo banco de dados não suporta dados espaciais.

Eu segui a metodologia de Greg Krakow para adicionar um campo WKT ao meu arquivo exportado (ao exportar para csv, adicione GEOMETRY=AS_WKTno campo "Layer", mas o delimitador de campo exportado é uma vírgula: CSV com campo WKT

O problema é que cada par de coordenadas dos meus polígonos (e suspeito que será o mesmo para as linhas) também são separados por vírgula, portanto não posso importar os dados novamente para o QGIS

Com o shapefile de ponto, ele funciona como um encanto.

Alguém sabe se posso escolher meu campo delimitado ao exportar para CSV? Escolha um ponto e vírgula, por exemplo?

Pesquisei na web e na documentação do QGIS, mas não encontrei nada.

fgcartographix
fonte
2
Você já consultou a página de ajuda: gdal.org/ogr/drv_csv.html . Descreve como alterar o separador.
Subterrâneo
Eu estava procurando QGIS especificamente ... não pensei em procurar a ajuda de GDAL. Obrigado!!
precisa saber é o seguinte

Respostas:

16

Consegui exportar para CSV, usando uma vírgula, separando as opções de criação de camada na caixa de diálogo Salvar como ... com quebras de linha.

Nem vírgula, nem a separação de espaço (mesmo quando estavam entre aspas) funcionou, mas as quebras de linha fizeram o truque. Enfatizar..

ESTA ABORDAGEM FUNCIONOU (separada por quebra de linha):

GEOMETRY=AS_WKT
SEPARATOR=SEMICOLON
LINEFORMAT=CRLF

Mas essas abordagens NÃO funcionaram ...

(opções separadas por espaço):

GEOMETRY=AS_WKT SEPARATOR=SEMICOLON

(opções separadas por vírgula):

GEOMETRY=AS_WKT, SEPARATOR=SEMICOLON

(entre aspas e LCOs separados por espaço ou vírgula):

"GEOMETRY=AS_WKT", "SEPARATOR=SEMICOLON"

Como o @underdark observou, existem algumas opções adicionais discutidas na página do driver OGR CSV que você pode estar ciente. Especificamente, o SEPARATORparâmetro aceitará um SEMICOLONou TABalém de COMMA. Além disso, você pode experimentar o LINEFORMATparâmetro, que suporta CRLF(dos / windows) ou LF(unix).

Uma imagem diz mais que mil palavras, então aqui está uma captura de tela. :)

insira a descrição da imagem aqui

elrobis
fonte
Obrigado! Está funcionando. Mas não sei por que, mas quando tento importar meu csv para o QGIS, ele diz que não é uma camada válida e pode ser adicionada ao mapa ...? Eu tentei com um polígono simples (cadeia de linhas e polígonos) e não funcionou nem :( Então eu acho que é uma outra questão agora ...;)
fgcartographix
...interessante. Não sei bem como explicar isso. Tentei adicionar o que criei ao mapa e funcionou. Então tentei adicionar um novo, como ele foi criado (ou seja, através da opção "Adicionar arquivo salvo no mapa"), e também funcionou. Qual versão do QGIS? 1,8?
precisa saber é
1.8.0-Lisboa. Está funcionando quando uso o botão "Adicionar arquivo salvo no mapa", não quando uso o botão "Adicionar camada de texto delimitada". O delimitador ponto e vírgula é de verificação, bem como o meu campo "WKT" selecionado para a geometria ... Ele trabalhou com uma camada ponto anterior embora ...
fgcartographix
1
Ahh .. tente acessar o botão "Adicionar camada de vetor .." (como faria para adicionar um shapefile) e, em seguida, navegue até a pasta com o seu .csv. Na parte inferior da caixa de diálogo "Abrir camada de vetor suportada por OGR", defina "Arquivos do tipo:" para Comma Separated Value [OGR]. Então você .csvdeve aparecer, e eu aposto que vai funcionar.
precisa saber é
Você apostou certo! Ele funcionou com o "Adicionar camada de texto delimitada" depois que abri meu csv no Excel e o salvei novamente ... Estranho, mas se estiver trabalhando com o botão "Adicionar camada de vetor", estou bem com isso. Porém, comportamento estranho ...
fgcartographix 4/12/12
2

Configurações para o QGIS 3 usando "Opções de camada":

insira a descrição da imagem aqui

gcamargo
fonte