你可以通过使用内置的java.nio.file 包,在Java中把一个ArrayList 对象的值写入一个纯文本文件中。
首先,创建你的ArrayList 对象并在列表中添加一些值,如下图所示:
List arrList = new ArrayList<String>();
arrList.add("Java");
arrList.add("Programming");
arrList.add("Language");
接下来,使用Paths 类,使用String ,将文件路径get() ,如下所示:
Path output = Paths.get("output.txt");
Path 对象代表你系统中的文件路径。
之后,你需要从Files 类中调用write() 方法,将arrList 变量值写入到output 路径中。
你需要将write() 方法放在一个try...catch 块中,以处理在向文件写值时可能发生的任何异常:
try {
Files.write(output, arrList);
} catch (Exception e) {
e.printStackTrace();
}
一旦完成,你应该在你的Java项目的当前工作目录中看到由JVM生成的output.txt 。
为了找到文件的位置,你可以从Path 对象中调用toFile().getAbsolutePath() 方法。
如下图所示,在Files.write() 行的下面添加一个println() 方法调用:
try {
Files.write(output, arrList);
System.out.println(
output.toFile().getAbsolutePath()
);
} catch (Exception e) {
e.printStackTrace();
}
你可以打开打印的路径,看到output.txt 文件。
文本文件的内容应该如下:
Java
Programming
Language
当你希望文件在不同的位置生成时,你可以提供一个绝对路径作为Paths.get() 方法的参数。
例如,我想让文件在我的Desktop 目录上生成,所以我指定了下面这个目录的绝对路径:
public static void main(String[] args) {
List arrList = new ArrayList<String>();
arrList.add("Java");
arrList.add("Programming");
arrList.add("Language");
Path output = Paths.get("/Users/nsebhastian/Desktop/output.txt");
try {
Files.write(output, arrList);
System.out.println(output.toFile().getAbsolutePath());
} catch (Exception e) {
e.printStackTrace();
}
}
这样,文件就会在Desktop/ 目录下生成,成为output.txt 文件。
现在你已经学会了如何用Java将ArrayList 值写到文件中,干得好!👍