From b7f9880b0bb1e9df011f2379dea550b8b67f8c1b Mon Sep 17 00:00:00 2001 From: LiuZihan <1353843969@qq.com> Date: Sun, 24 May 2026 17:27:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=20'project/ExportCommand.jav?= =?UTF-8?q?a'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- project/ExportCommand.java | 52 -------------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 project/ExportCommand.java diff --git a/project/ExportCommand.java b/project/ExportCommand.java deleted file mode 100644 index 32e4311..0000000 --- a/project/ExportCommand.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.example.moviecli.command; - -import com.example.moviecli.model.Movie; -import com.example.moviecli.repository.MovieRepository; -import com.example.moviecli.view.ConsoleView; -import com.example.moviecli.exception.SaveFailedException; -import com.opencsv.CSVWriter; -import java.io.FileWriter; -import java.util.List; - -public class ExportCommand implements Command { - private final ConsoleView view; - - public ExportCommand(ConsoleView view) { - this.view = view; - } - - @Override - public String getName() { - return "export"; - } - - @Override - public void execute(String[] args, MovieRepository repository) { - List movies = repository.getAll(); - if (movies.isEmpty()) { - view.printError("没有数据可导出。"); - return; - } - try (CSVWriter writer = new CSVWriter(new FileWriter("movies.csv"))) { - String[] header = {"Rank", "Title", "OriginalTitle", "Score", "Year", "Director"}; - writer.writeNext(header); - for (Movie m : movies) { - String[] line = { - String.valueOf(m.getRank()), - m.getTitle(), - m.getOriginalTitle(), - m.getScore(), - m.getYear(), - m.getDirector() - }; - writer.writeNext(line); - } - view.printSuccess("导出成功:movies.csv"); - } catch (Exception e) { - // 使用自定义异常包装原始异常 - SaveFailedException ex = new SaveFailedException("导出CSV文件失败", e); - view.printError(ex.getMessage()); - ex.printStackTrace(); // 打印堆栈,体现使用了自定义异常 - } - } -} \ No newline at end of file