[java] OpenCSV를 사용하여 CSV 파일의 데이터를 임의로 정렬하는 방법은?
  1. OpenCSV 라이브러리 추가하기: 프로젝트의 의존성에 OpenCSV 라이브러리를 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음 종속성을 추가합니다:
<dependency>
    <groupId>com.opencsv</groupId>
    <artifactId>opencsv</artifactId>
    <version>5.5.2</version>
</dependency>
  1. CSV 파일 읽기: CSV 파일을 읽기 위해 CSVReader 클래스를 사용합니다. 다음 코드는 data.csv 파일을 읽는 예제입니다:
String csvFilePath = "data.csv";
CSVReader reader = new CSVReader(new FileReader(csvFilePath));
List<String[]> data = reader.readAll();
  1. 데이터 정렬: CSV 파일의 데이터를 정렬하기 위해 Collections.sort() 를 사용합니다. 예를 들어, 첫 번째 열을 기준으로 오름차순으로 데이터를 정렬하는 경우 다음 코드를 사용할 수 있습니다:
Collections.sort(data, (a, b) -> a[0].compareTo(b[0]));
  1. 정렬된 데이터 출력 또는 저장: 정렬된 데이터를 출력하거나 다른 CSV 파일에 저장할 수 있습니다. 다음은 정렬된 데이터를 화면에 출력하는 예제입니다:
for (String[] row : data) {
    System.out.println(Arrays.toString(row));
}

정렬된 데이터를 다른 CSV 파일에 저장하는 방법은 다음과 같습니다:

String outputFilePath = "sorted_data.csv";
CSVWriter writer = new CSVWriter(new FileWriter(outputFilePath));
writer.writeAll(data);
writer.close();

이제 위의 단계를 따라서 CSV 파일의 데이터를 임의로 정렬할 수 있습니다. OpenCSV 라이브러리는 데이터의 파싱과 CSV 파일 조작을 위한 다양한 기능을 제공하므로, 필요한 경우 더 복잡한 정렬 기준을 적용할 수도 있습니다.

참고 자료: