java中 File类是什么?

Python012

java中 File类是什么?,第1张

在java中File类是可以直接操作文件的类,

它有四个构造函数:

File(String parent,String child)

File(File parent,String child)

File(URI uri)

File(String pathname)

封装了以下主要方法:

canWrite() 返回文件是否可以读写

canRead() 返回文件是否可读

compareTo(File pathname)检查文件路径间的顺序

createNewFile() 当文件不存在时生成文件

delete() 从文件系统内删除该文件

deleteOnExit() 程序顺利结束时删除文件

equals(Object obj) 检查特定对象的路径名是否相等

exists() 判断文件是否存在

getAbsoluteFile() 返回文件完整路径的File实例

getAbsolutePath() 返回文件完整路径

getName() 返回文件名称

getParent() 返回文件父目录路径

getPath() 返回文件路径字符串

getParentFile() 返回文件所在文件夹的路径

hashCode() 返回文件哈希码

isDirectory() 判断该路径指示的是否是目录

isFile() 判断该路径指示的是否是文件

lastModified() 返回该文件最后更改时间标志

length() 返回文件长度

list() 返回文件和目录清单

mkdir() 生成指定的目录

renameTo(File dest) 更改文件名字

setReadOnly() 将文件设置为可读

toString() 返回文件状态的字符串

toURL() 将文件的路径字符串转换成URL

推荐于 2017-11-25

查看全部5个回答

— 你看完啦,以下内容更有趣 —

在java中File是什么意思?有什么作用?

在java中File类是可以直接操作文件的类,

它有四个构造函数:

File(String parent,String child)

File(File parent,String child)

File(URI uri)

File(String pathname)

封装了以下主要方法:

canWrite() 返回文件是否可以读写

canRead() 返回文件是否可读

compareTo(File pathname)检查文件路径间的顺序

createNewFile() 当文件不存在时生成文件

delete() 从文件系统内删除该文件

deleteOnExit() 程序顺利结束时删除文件

equals(Object obj) 检查特定对象的路径名是否相等

exists() 判断文件是否存在

getAbsoluteFile() 返回文件完整路径的File实例

getAbsolutePath() 返回文件完整路径

getName() 返回文件名称

getParent() 返回文件父目录路径

getPath() 返回文件路径字符串

getParentFile() 返回文件所在文件夹的路径

hashCode() 返回文件哈希码

isDirectory() 判断该路径指示的是否是目录

isFile() 判断该路径指示的是否是文件

lastModified() 返回该文件最后更改时间标志

length() 返回文件长度

list() 返回文件和目录清单

mkdir() 生成指定的目录

renameTo(File dest) 更改文件名字

setReadOnly() 将文件设置为可读

toString() 返回文件状态的字符串

toURL() 将文件的路径字符串转换成URL

一、File

类关注的是文件在磁盘上的存储,而

FileInputStream

流类关注的是文件的内容。

二、关于InputStream和Reader;

InputStream提供的是

字节流

的读取,使用InputStream读取出来的是byte数组,而非文本读取,用Reader读取出来的是char数组或者String,这是InputStream和Reader类的根本区别。

InputStreamReader可以将读如stream转换成字符流方式,是reader和stream之间的桥梁.

Reader类及其子类提供的字符流的读取char(16位,unicode编码),inputStream及其子类提供字节流的读取byte(8位),所以FileReader类是将文件按字符流的方式读取,FileInputStream则按字节流的方式读取文件;

FileInputStream以字节为单位(非

unicode

)的流处理。字节序列即:

二进制数据

。与编码无关,不存在

乱码

问题。

FileInputStream

:以字节流方式读取;

FileReader

:把

文件转换

为字符流读入;

三、常用的Reader类

FileReader

,InputStreamReader

,BufferedReader

FileReader

InputStreamReader

涉及编码转换,可能在不同的平台上出现乱码现象。

(FileInputStream

以二进制方式处理,不会出现乱码现象。)

FileReader是InputStreamReader

类的子类。

InputStreamReader

构造函数

参数为InputStream

编码方式

,当要指定编码方式时,必须使用

InputStreamReader

类。

FileReader

构造函数的参数与

FileInputStream

同,为

File

对象或表示

path

String。

1、FileReader的用法

FileReader

fr

=

new

FileReader("file.txt")

char[]

buffer

=

new

char[1024]

int

ch

=

0

while((ch

=

fr.read())!=-1

)

{

 

System.out.print((char)ch)

}

2、InputStreamReader的用法

InputStreamReader

isr

=

new

InputStreamReader(new

FileInputStream("file.txt"))

while((ch

=

isr.read())!=-1)

{

 System.out.print((char)ch)

}

3、BufferedReader的用法。

BufferedReader

由Reader类扩展而来,提供通用的缓冲方式文本读取,而且提供了很实用的readLine,读取分行文本很适合,BufferedReader是针对Reader的,不直接针对文件,也不是只针对文件读取。

BufferedReader

br

=

new

BufferedReader(new

InputStreamReader(new

FileInputStream("file.txt")))

String

data

=

null

while((data

=

br.readLine())!=null)

{

 System.out.println(data)

}

java 种的File类的作用和用处如下:

1.直接处理文件和文件系统。File类没有指定信息怎样从文件读取或向文件存储;它描述了文件本身的属性。File对象用来获取或处理与磁盘文件相关的信息,例如权限,时间,日期和目录路径。此外,File还浏览子目录层次结构。很多程序中文件是数据的根源和目标。尽管它们在小应用程序中因为安全原因而受到严格限制,文件仍是存储固定和共享信息的主要资源。Java中的目录当成File 对待,它具有附加的属性——一个可以被 list( )方法检测的文件名列表。

2.下面的构造函数可以用来生成File 对象:

File(String directoryPath)

File(String directoryPath, String filename)

File(File dirObj, String filename)

这里,directoryPath是文件的路径名,filename 是文件名,dirObj 一个指定目录的File 对象。下面的例子创建了三个文件:f1,f2,和f3。第一个File对象是由仅有一个目录路径参数的构造函数生成的。第二个对象有两个参数——路径和文件名。第三个File对象的参数包括指向f1文件的路径及文件名。f3和f2指向相同的文件。

File f1 = new File("/")

File f2 = new File("/","autoexec.bat")

File f3 = new File(f1,"autoexec.bat")

注意:Java 能正确处理UNIX和Windows/DOS约定路径分隔符。如果在Windows版本的Java下用斜线(/),路径处理依然正确。记住,如果你用Windows/DOS使用反斜线(/)的约定,你需要在字符串内使用它的转义序列(//)。Java约定是用UNIX和URL风格的斜线来作路径分隔符。