gpt4 book ai didi

java - 使用java将数据从一个csv文件复制到另一个csv文件

转载 作者:行者123 更新时间:2023-12-02 11:21:05 26 4
gpt4 key购买 nike

我正在编写 Java 代码,将数据从一个 csv 文件复制到另一个 csv 文件中。

要求是在特定路径中上传的文件(多个文件)必须一次复制一个到不同位置的另一个 csv 文件(例如 tag.cs​​v)中。稍后将拾取 tag.cs​​v通过 shell 脚本连接到 Oracle DB 来运行存储过程。所有这些都会重复执行,直到处理完所有上传的文件并为每个文件单独触发 shell 脚本。

现在我陷入了复制 csv 数据的困境。我尝试过使用缓冲读取器、文件写入器等,但我无法将数据复制到 tag.cs​​v,但我只能读取它们。

由于我是 java 新手,我发现很难理解我哪里出了问题。非常感谢您的帮助。

最佳答案

您可以简单地使用 Java 7 NIO2:

例如:
如果您想将文件从一个位置复制到另一个位置,只需调用:

Files.copy(fromPath, toPath);

如果你想搬家:

Files.move(fromPath, toPath);

借助 Java 7 功能,您无需编写文件处理的硬代码。
希望有帮助。

Java 7 NIO2 Tutorial Link

已编辑:
但您的要求不是文件复制,而是要将上传的文件内容写入现有文件,您也可以简单地使用 Java 7 NIO2 功能。

例如:

private static void writeFileAsAppend() throws IOException {
List<String> lines = readFileAsSequencesOfLines();
Path path = getWriteFilePath();
Files.write(path, lines, StandardOpenOption.APPEND);
}

private static List<String> readFileAsSequencesOfLines() throws IOException {
Path path = getReadFilePath();
List<String> lines = Files.readAllLines(path);
return lines;
}

private static Path getReadFilePath() {
Path path = Paths
.get(".\\ReadMe.csv");
return path.normalize();
}

private static Path getWriteFilePath() {
Path path = Paths
.get(".\\WriteMe.csv");
return path;
}

关于java - 使用java将数据从一个csv文件复制到另一个csv文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49918627/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com