Java中的文件操作:文件读取、文件写入、文件属性


一、文件读取


文件读取是指从文件中读取数据并将其存储到内存中。Java中提供了多个用于文件读取的类,包括FileInputStream、BufferedInputStream、Scanner等。

1. FileInputStream


FileInputStream用于从文件中读取字节流,其构造函数需要传入文件路径或File对象。

FileInputStream fis = new FileInputStream("test.txt");


读取文件内容可以使用read()方法,该方法返回一个int类型的值,代表读取到的字节。当读取到文件末尾时返回-1。

int data = fis.read();


如果要读取多个字节可以使用read(byte[] b)方法,该方法会将读取到的字节存储到指定的byte数组中。

byte[] data = new byte[1024];
int len = fis.read(data);

2. BufferedInputStream


BufferedInputStream是FileInputStream的缓冲流,使用该类可以提高读取效率。其构造函数需要传入一个InputStream对象。

FileInputStream fis = new FileInputStream("test.txt");
BufferedInputStream bis = new BufferedInputStream(fis);


读取文件内容可以使用read()方法,该方法返回一个int类型的值,代表读取到的字节。当读取到文件末尾时返回-1。

int data = bis.read();


如果要读取多个字节可以使用read(byte[] b)方法,该方法会将读取到的字节存储到指定的byte数组中。

byte[] data = new byte[1024];
int len = bis.read(data);

3. Scanner


Scanner类可以用于从文件中读取文本数据,其构造函数需要传入一个File对象。

File file = new File("test.txt");
Scanner scanner = new Scanner(file);


读取文件内容可以使用next()方法,该方法返回一个字符串。

String data = scanner.next();



二、文件写入


文件写入是指将内存中的数据写入到文件中。Java中提供了多个用于文件写入的类,包括FileOutputStream、BufferedOutputStream、PrintWriter等。

1. FileOutputStream


FileOutputStream用于将字节流写入到文件中,其构造函数需要传入文件路径或File对象。

FileOutputStream fos = new FileOutputStream("test.txt");


写入文件内容可以使用write(byte[] b)方法,该方法会将指定的byte数组中的数据写入到文件中。

byte[] data = "Hello World".getBytes();
fos.write(data);

2. BufferedOutputStream


BufferedOutputStream是FileOutputStream的缓冲流,使用该类可以提高写入效率。其构造函数需要传入一个OutputStream对象。

FileOutputStream fos = new FileOutputStream("test.txt");
BufferedOutputStream bos = new BufferedOutputStream(fos);


写入文件内容可以使用write(byte[] b)方法,该方法会将指定的byte数组中的数据写入到文件中。

byte[] data = "Hello World".getBytes();
bos.write(data);

3. PrintWriter


PrintWriter类可以用于将文本数据写入到文件中,其构造函数需要传入一个File对象。

File file = new File("test.txt");
PrintWriter writer = new PrintWriter(file);


写入文件内容可以使用print()或println()方法,该方法会将指定的字符串写入到文件中。

writer.print("Hello World");
writer.println("Hello World");


三、文件属性


文件属性是指文件的大小、创建时间、修改时间等相关信息。Java中提供了File类来获取文件属性。

1. 获取文件大小


可以使用length()方法获取文件的大小,返回值单位为字节。

File file = new File("test.txt");
long size = file.length();

2. 获取文件创建时间


可以使用lastModified()方法获取文件的创建时间戳,需要将其转换为Date对象才能获取具体的时间。

File file = new File("test.txt");
long timestamp = file.lastModified();
Date date = new Date(timestamp);

3. 获取文件修改时间


可以使用lastModified()方法获取文件的修改时间戳,需要将其转换为Date对象才能获取具体的时间。

File file = new File("test.txt");
long timestamp = file.lastModified();
Date date = new Date(timestamp);


四、总结


本文介绍了Java中的文件操作,包括文件读取、文件写入和文件属性的相关知识点,并提供了详细的代码案例和函数参数讲解。希望可以帮助编程小白更好地学习Java文件操作。

猿教程
请先登录后发表评论
  • 最新评论
  • 总共0条评论