java编写程序: 让用指定写入文本的文件名字和位置,将以追加方式打开该文件。 用户从键盘上输入多行文字,将每行文字内容写入文件中,如果用户 输入end 则结束输入。 打开刚才所写入的文件,读取每一行文字输出到屏幕上。
时间: 2024-03-13 14:43:06 浏览: 68
以下是 Java 代码实现:
```java
import java.io.*;
public class FileIO {
public static void main(String[] args) {
String filename = "";
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter writer = null;
try {
System.out.print("请输入文件名和位置:");
filename = reader.readLine();
writer = new BufferedWriter(new FileWriter(filename, true));
while (true) {
System.out.print("请输入要写入文件的内容,输入 end 结束:");
String line = reader.readLine();
if (line.equals("end")) {
break;
}
writer.write(line);
writer.newLine();
}
writer.flush();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (writer != null) {
writer.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
BufferedReader fileReader = null;
try {
fileReader = new BufferedReader(new FileReader(filename));
String line = null;
while ((line = fileReader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (fileReader != null) {
fileReader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
```
解释:
首先定义一个 `BufferedReader` 对象 `reader`,用于从键盘上读取用户的输入。然后让用户输入文件名和位置,并使用 `BufferedWriter` 对象 `writer` 以追加方式打开该文件。进入循环,让用户输入要写入文件中的内容,如果输入了 "end" 则退出循环。在循环中,使用 `writer.write(line)` 将每一行输入写入文件中,并使用 `writer.newLine()` 添加一个换行符。
接下来使用 `BufferedReader` 对象 `fileReader` 以读取方式打开文件,然后使用 `while ((line = fileReader.readLine()) != null)` 循环读取每一行文字,并使用 `System.out.println(line)` 将其输出到屏幕上。其中 `line` 表示读取到的每一行文字。最后需要在程序结束前关闭文件流。
阅读全文