在main函数中从键盘输入五个字符串到字符数组中,将该五个字符串作为五段输入到项目文件夹下的files目录下的a.txt文件中。
如下
package com.zyf.test01;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
/**
* 在main函数中从键盘输入五个字符串到字符数组中,将该五个字符串作为五段输入到项目文件夹下的files目录下的a.txt文件中
*/
public class Test01 {
public static void main(String[] args) {
// 定义Scanner对象
Scanner input = new Scanner(System.in);
// 输入五个字符到字符数组
// 定义字符数组
String[] arr = new String[5];
// 在控制台输入五个字符串并放入字符数组
for(int i=0;i<5;i++) {
System.out.println("请输入第"+(i+1)+"个字符串:");
arr[i]= input.next();
}
input.close();
// 定义File对象
File file = new File(".//files");
// 判断文件夹是否存在 如果不存在则创建
if(!file.exists()) {
file.mkdirs();
}
// 定义字符缓冲输出流对象
BufferedWriter bw = null;
try {
try {
bw = new BufferedWriter(new FileWriter(new File(file,"a.txt")));
for(String word : arr) {
// 写入一条
bw.write(word);
// 换行
bw.newLine();
// 刷新流 如果不刷新也不close释放资源,文件就会一直存在缓冲区内 最后导致没写进去
bw.flush();
}
System.out.println("创建并写入成功");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
// 释放资源
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}