Erros de análise devido a caracteres especiais em registros de txt do DNS

1

Eu tenho problemas para analisar os registros do dns txt recuperados por um script que eu escrevi. O script usa registros, registros ns e registros txt e os grava em um arquivo .csv. Estou usando o ponto-e-vírgula para separar entradas e "como delimitador de texto.

Como os registros txt contêm caracteres especiais como ", isso leva a erros de análise, quando tento abrir o arquivo .csv, por exemplo, em planilhas.

IN TXT "verification=12345678901234567890"

Se houver várias entradas por registro, isso fará com que " ocorra em um registro e, por exemplo, "" no final das entradas. Levando a cdn.net."verification=12345678901234567890"";"...

Existe uma maneira decente de evitar tais problemas dentro do script? Usar vários delimitadores de texto parece uma solução, mas também como um hack feio.

    
por Katja Eichelberger 08.11.2017 / 10:16

1 resposta

1

Os arquivos CSV são simplesmente arquivos de texto formatados com um delimitador que você pode escolher. Então, basicamente, o delimitador não é algo que você força no documento que está escrevendo, mas é a pessoa que deseja abrir o arquivo que pode escolher o delimitador. " é o único por padrão, mas pode ser alterado.

Atualmente, qualquer software decente que manipule arquivos CSV permite que os usuários escolham o delimitador. Eu sugiro escolher um caractere que você tenha certeza de não usar como delimitador do documento (por exemplo: $ , # , ...) e diga às pessoas que devem abrir o documento que o delimitador é esse caractere em vez de " .

Outra maneira é abrir o arquivo pela primeira vez com o delimitador escolhido e salvar o arquivo em outro formato ( .xls , por exemplo) e enviar este último arquivo para as pessoas que devem ler o documento. Dessa forma, eles não precisarão escolher nenhum delimitador na abertura.

    
por 08.11.2017 / 10:49