java文本I/O(一)

来源:互联网 发布:华师大网络教育好过吗 编辑:程序博客网 时间:2024/06/05 22:40

文件类

存储在变量、对象中的数据是暂时的,程序终止的时候就会消失,将数据存储到文件中,可以使得数据可以传送并被其他程序使用。在面向对象的程序设计中,万物皆对象,所以为了允许程序对文件进行处理,需要把一个文件抽象成对象,在java中,获取文件属性以及删除、重命名文件等工作由File类来完成。

File类包含许多获取文件属性、删除文件等方法,但是,File类不包含创建文件和读写文件内容的方法 ,使用File类需要引入包java.io.File

在文件系统中,每个文件都存放在一个目录下,一个File类实例表示一个目录/文件,但是需要注意,创建一个file实例并不会在机器上创建一个文件,无论文件是否存在,都可以创建任意文件名的file实例,可以调用exists()方法来判断文件是否存在。

File对象封装了文件或路径的属性,但是不包括创建文件、读写文件数据的方法,为了完成I/O操作,需要使用java I/O类创建对象来完成。可以使用Scanner和PrintWriter类读写文本文件的内容。

例如:

File file =new File("image/us.gif");

创建了一个代表image/us.gif这个文件的对象file,在后续的操作中,用到文件的地方都用file这个对象来表示。

Windows中目录分隔符是反斜杠(),如C:\book\hi.java,但在java中反斜杠是特殊字符,所以windows文件目录应该表示为C:\\book\\hi.java 。Unix中文件目录分隔符为斜杠(/),如/home/jing/hi.java 。Java的目录分隔符也是(/),语句new File("image/us.gif") 在Windows、Unix或者其他任何系统上都能工作。

通过File类我们已经把一个具体的文件抽象成了java世界中的对象,接下来需要对这个文件进行创建、写入、读取。创建和写入的工作由PrintWriter对象来完成,读取的工作由Scanner对象来完成。

PrintWriter写数据

java.io.PrintWriter类实例可以创建一个文件,并向文本文件写入数据。

PrintWriter中的常用方法:

方法 方法描述 PrintWriter(File f) 为指定的文件对象f创建一个PrintWriter对象,这个对象专门负责对文件f进行各种写入操作。如果文件不存在,则创建该文件,如果存在,则文件的当前内容被废弃。调用构造函数可能抛出异常,需要进行处理 PrintWriter(String fileName) 为指定的文件名字符串创建一个PrintWriter对象 print() 向文件中写入内容,根据参数不同,有各种重载方法,写入字符串、double型、int型等等 println() 比print()多打印一个行分隔符,行分隔符是由系统定义的,Windows是\r\n,Unix系统是\n close() 必须使用close()方法关闭文件,否在写入的数据不能正确的保存到文件中

例如:

import java.io.Fileimport java.io.PrintWriterpublic class WriteData{    public static void main(String[] args){        File f=new File("a.txt");        PrintWriter output=new PrintWriter(f);        out.print("hi java");        out.close();}

以上程序,为a.txt文件创建一个文件对象,为该文件对象创建写入对象,通过写入对象写入“hi java”,最后关闭该文件。

原创粉丝点击