New We are sorting MAX channels into categories and territories. Read the news

CSV: запятая внутри значения меняет правила



Простое String.join(",", values) не подходит, если поля содержат кавычки, запятые или переносы строк. Один возможный способ экранирования:
static String csv(String value) {
    if (value.contains(",") || value.contains("\"")
            || value.contains("\n") || value.contains("\r")) {
        return "\"" + value.replace("\"", "\"\"") + "\"";
    }
    return value;
}

Здесь null не допускается: способ записи отсутствующего значения нужно определить отдельно. Для обмена с другими программами согласуйте кодировку, разделитель и окончания строк.

Если CSV откроют в таблице, отдельно учитывайте формулы: обычное CSV-экранирование не защищает от интерпретации значений вроде =... как формул.

#Java

Java Библиотека | Мы в Телеграм
Views: 239
Open in MAX Report an inaccuracy

Report an inaccuracy

Describe what needs fixing. If you have a source, add a link.

You are leaving datool.ru

The link leads to an external website. datool.ru is not responsible for its content — check the address before entering passwords or payment details.

Redirecting in 10 s

Go