1

У меня проблемы с анализом записей DNS TXT, полученных с помощью сценария, который я написал. Сценарий берет записи, записи ns и записи txt и записывает их в файл .csv. Я использую точку с запятой для разделения записей и "в качестве разделителя текста.

Поскольку записи txt содержат специальные символы, такие как «, это приводит к ошибкам синтаксического анализа, когда я пытаюсь открыть файл .csv, например, в электронных таблицах.

IN TXT "verification=12345678901234567890"

Если в записи имеется несколько записей, это приводит к тому, что " происходит внутри записи и, например, "" в конце записей. Ведущий на cdn.net."verification=12345678901234567890"";"...

Есть ли достойный способ предотвратить такие проблемы внутри скрипта? Использование нескольких разделителей текста кажется одним из решений, но также и уродливым хаком.

1 ответ1

1

Файлы CSV - это просто текстовые файлы, отформатированные с разделителем, который вы можете выбрать. Таким образом, в основном разделитель - это не то, что вы вводите в документе, который вы пишете, а тот, кто хочет открыть файл, который может выбрать разделитель. " только один по умолчанию, но может быть изменен.

В настоящее время любое приличное программное обеспечение, которое обрабатывает файлы CSV, позволяет пользователям выбирать разделитель. Я бы предложил выбрать символ, который, как вы уверены, не будет использоваться в качестве разделителя документа (например: $ , # , ...), и сообщить людям, которые должны открыть документ, что этот символ является этим символом. вместо " .

Другой способ - открыть файл самостоятельно в первый раз с выбранным разделителем, сохранить файл в другом формате (например, .xls ) и отправить этот последний файл людям, которые должны прочитать документ. Таким образом, им не нужно будет выбирать разделители при открытии.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .