gpt4 book ai didi

java - 如何从多个其他文本文件创建一个文本文件?

转载 作者:行者123 更新时间:2023-12-01 12:15:28 25 4
gpt4 key购买 nike

我需要创建一个文本文件,其中组合了同一文件夹中任意数量的文本文件。它们需要通过我的主方法中的参数来访问,以便它查找我编写的文件名。最后一个文件名应该是目标文件。到目前为止,我的代码正在创建一个新文件,其中包含我输入的最后一个字符串作为名称,但它是一个空文件。我怀疑我的 BufferedReader 类没有做它应该做的事情,但我不知所措。这是我的代码。首先是驱动程序类和实际程序。非常感谢您提供的任何帮助!

public class Driver {

public static void main(String[] args)
{
CatFiles cat = new CatFiles(args);
cat.bookCombiner();

}
}

这就是出错的地方。

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.channels.FileChannel;
import java.util.ArrayList;

public class CatFiles {
private String[] files;

public CatFiles(String[] files) {
this.files = files;
}

public String getDest() {

String destination = null;
for (int i = 0; i < files.length; i++) {
destination = files[i];
}

return destination;
}

public void bookCombiner() {
BufferedReader reader = null;
try {
FileWriter writer = new FileWriter(getDest());
for (int i = 0; i < files.length - 1; i++) {
File file = new File(files[i]);
String line = null;
reader = new BufferedReader(new FileReader(file));
if ((line = reader.readLine()) != null) {
writer.write(files.length - 1);
}

}
writer.close();

} catch (Exception e) {
System.out.println(e);
} finally {
try{
reader.close();
} catch(IOException e){
e.printStackTrace();
}
}

}
}

最佳答案

你从来不使用 writer 来写行。变化:

if ((line = reader.readLine()) != null) {
writer.write(files.length - 1);
}

while ((line = reader.readLine()) != null) {
writer.write(line);
}

关于java - 如何从多个其他文本文件创建一个文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27040185/

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