欢迎访问宙启技术站
智能推送

通过Java函数实现文件和I/O操作

发布时间:2023-06-09 19:28:41

Java是一门强大的编程语言,它具有处理文件和I/O操作的功能。Java提供了几个预定义类来简化文件和I/O操作,这些类包括File、InputStream、OutputStream、Reader、Writer、BufferedReader和PrintWriter等。

File类的主要作用是管理文件和目录。可以通过该类访问目录和文件、创建和删除目录和文件。File类包含多个方法,例如:创建新文件、删除文件、判断文件是否存在,获取文件的信息等。

例如,创建一个名为hello.txt的文件可以使用以下代码:

File file = new File("hello.txt");

如果要在指定目录下创建文件,可以使用以下代码:

File file = new File("D:\\data\\hello.txt");

如果要创建目录,可以使用以下代码:

File dir = new File("D:\\data\

ewdir");

dir.mkdir();

InputStream和OutputStream类是用于输入和输出的抽象类。InputStream类可以从不同的数据源中读取数据,包括文件、数组、网络等。OutputStream类用于将数据写入输出源,同样可以包括文件、数组、网络等。

例如,从文件中读取数据可以使用以下代码:

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

int data = fis.read();

while(data != -1) {

    System.out.print((char) data);

    data = fis.read();

}

fis.close();

PrintWriter类是用于打印输出的类。它提供了一些方法,例如:print()、println()、printf()等。PrintWriter类是BufferedWriter的子类,它提供了缓存写入的方法,从而提高了写入的效率。

以下是使用PrintWriter类将数据写入文件的示例:

PrintWriter writer = new PrintWriter("output.txt", "UTF-8");

writer.println("Hello, world!");

writer.close();

Reader和Writer类用于读取和写入字符流,分别对应于InputStream和OutputStream类。Reader类提供了读取字符流的方法,例如:read()、readLine()等。Writer类提供了写入字符流的方法,例如:write()、append()等。

例如,使用Reader类从文件中读取数据可以使用以下代码:

FileReader reader = new FileReader("hello.txt");

int data = reader.read();

while(data != -1) {

    System.out.print((char) data);

    data = reader.read();

}

reader.close();

BufferedReader类是一个缓冲字符输入流,它可以使用缓冲从字符输入流中读取文本。它的主要作用是提供更高效的读取字符的方法。

例如,使用BufferedReader类从文件中读取数据可以使用以下代码:

FileReader reader = new FileReader("hello.txt");

BufferedReader br = new BufferedReader(reader);

String line = br.readLine();

while(line != null) {

    System.out.println(line);

    line = br.readLine();

}

br.close();

以上就是Java中文件和I/O操作的基本知识。Java提供了许多预定义类来方便使用这些操作,我们只需要了解这些类的基本用法即可。