java练习-任务2.1-文本操作
程序员文章站
2022-05-29 19:57:17
...
任务要求:
1、完成一个java application应用程序,判别指定路径下指定文件名的文件是否存在。
2、如果指定文件存在,读取并分别显示其修改时间和文件大小等属性。
3、以文本方式打开某一指定路径指定文件名的文本文件,读取其内容并显示。
4、以文本方式向某一指定路径指定文件名的文本文件写入指定文本内容,例如写入自己的姓名和学号。
任务分析:
1、首先我们将文件地址和需要输入的内容得到
2、我们需要用到FileReader类和FileWriter类对文本进行操作
运行结果:
输入地址
显示信息
输入写入内容
文本内容
这里采用两条写入内容,一条为写入,一条为定义内容,我们发现写入内容无法换行
程序代码:
package test11_6;
import java.io.*;
import java.text.SimpleDateFormat;
import java.util.Scanner;
public class test2_1a{
static void read_test(String address)//文本“读”操作函数
{
File file_test=new File(address);
System.out.println("该文件是否存在?"+file_test.exists());
System.out.println("文件名:" + file_test.getName());
System.out.println("该文件有"+file_test.length()+"字节");
System.out.println("该文件可读吗?"+file_test.canRead());
System.out.println("该文件路径:"+file_test.getPath());
SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd 'at' HH:mm:ss z");
System.out.println("最后修改时间:"+formatter.format(file_test.lastModified()));
try{
BufferedReader txt= new BufferedReader(new FileReader(address));
String str;//定义一个字符串类型空变量str
while ((str = txt.readLine())!= null) {//readLine()方法, 用于读取一行,只要读取内容不为空就一直执行
System.out.println(str);//输出从每一行读取的内容
}
txt.close();
}
catch(IOException e)
{
e.printStackTrace();//printStackTrace()方法是打印异常信息在程序中出错的位置及原因
}
}
static void writer_test(String address,String content)
{
try {
FileWriter fw=new FileWriter(address,true);
fw.write(content);//将content写入文本
fw.close();//关闭文件
}
catch(IOException e) {
e.printStackTrace();
}
}
public static void main(String []args) {
System.out.println("请输入文件地址:");
Scanner reader=new Scanner(System.in);
String address=reader.nextLine();//读取地址
read_test(address);
System.out.println("请输入写入文本的内容:");
String content=reader.nextLine();//读取写入内容
writer_test(address,content);
String content1="\n唐xx\n2020220";
writer_test(address,content1);
}
}