Запись CSV-файлов с настраиваемым форматированием
После очистки данных их нужно экспортировать для разных получателей. Команда аналитики ожидает стандартные CSV-файлы, европейские системы работают с разделителем-точкой с запятой, а устаревший мейнфрейм требует файлов без заголовков. Гибкие параметры экспорта обеспечивают плавную интеграцию данных в самых разных технических средах.
Классы Table и CsvWriteOptions уже импортированы.
Это упражнение является частью курса
Импорт данных в Java
Инструкции к упражнению
- Запишите таблицу в стандартный CSV-файл.
- Запишите файл с разделителем-точкой с запятой.
- Запишите файл без заголовков для устаревшей системы.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
public class WriteCSVFiles {
public static void main(String[] args) {
try {
Table employeePerformance = Table.read().csv("employee_performance.csv");
System.out.println("Original data structure:");
System.out.println(employeePerformance.structure());
System.out.println("First 3 rows:");
System.out.println(employeePerformance.first(3));
// Write the table as a standard CSV
employeePerformance.____.csv("employee_performance_standard.csv");
// Write with a semicolon separator
employeePerformance.write().csv(CsvWriteOptions
.____("employee_performance_semicolon.csv")
.____(';')
.build());
// Write without headers for a legacy system
employeePerformance.write().csv(CsvWriteOptions
.builder("employee_performance_noheader.csv")
.____(____)
.build());
System.out.println("\nFiles successfully written to output directory.");
Table readBack = Table.read().csv("employee_performance_standard.csv");
System.out.println("\nVerification - Reading back semicolon-separated file:");
System.out.println(readBack.first(3));
} catch (Exception e) {
System.err.println("Error processing CSV files: " + e.getMessage());
}
}
}