在Java 7中如何对文件进行操作

 我来答
好程序员
2016-12-05 · HTML5前端培训/大数据培训/Java
好程序员
好程序员是IT高端课程培训基地,从平凡到卓越,为梦想而拼搏。
向TA提问
展开全部
1.创建文件
2.删除文件
3.复制文件
4.文件移动/改名
这文件是以对Java7里提供的新的Path类很熟悉为前提,如果不熟悉这个类,Path 是文件系统里对位置的一个逻辑概念,例如 c: 和 ../foobar.txt 都是Path。
5.创建和删除文件
下面的代码片段展示的是用 Files.createFile(Path target) 方法创建文件的基本用法。
Path target = Paths.get("D:\Backup\MyStuff.txt"); Path file = Files.createFile(target);

很多时候,出于安全的原因,可能希望在创建的文件上设置一下属性,例如:是否可读/可写/写执行。这些属性依赖于文件系统的种类,需要使用跟文件系统相应的权限辅助类来完成这种操作。例如,PosixFilePermission和PosixFilePermissions 为 POSIX 文件系统设计的。下面的是在POSIX文件系统上的文件设置读写权限的用法。
Path target = Paths.get("D:\Backup\MyStuff.txt"); Set<PosixFilePermission> perms= PosixFilePermissions.fromString("rw-rw-rw-"); FileAttribute<Set<PosixFilePermission>> attr= PosixFilePermissions.asFileAttribute(perms); Files.createFile(target, attr);

这个 java.nio.file.attribute 包里提供了很多关于 FilePermission 的类。
警告 当创建一个带有权限属性的文件时,请注意包含这个文件的文件夹是否有权限的强制约束。例如,会发现,由于这些限制,尽管给创建的文件指定了 rw-rw-rw 权限,实际创建的结果却是 rw-r–r– 。
6.删除文件,使用 Files.delete(Path) 这个方法。
Path target = Paths.get("D:\Backup\MyStuff.txt"); Files.delete(target);

拷贝和移动文件
下面的代码向展示的是使用 Files.copy(Path source, Path target) 方法做文件拷贝的基本用法。
Path source = Paths.get("C:\My Documents\Stuff.txt"); Path target = Paths.get("D:\Backup\MyStuff.txt"); Files.copy(source, target);

经常的,在拷贝文件的过程中可能希望指定一些操作设置。在Java7里,可以通过使用 StandardCopyOption enum 来设置这些属性。下面看一个例子。
import static java.nio.file.StandardCopyOption.*;Path source = Paths.get("C:\My Documents\Stuff.txt");Path target = Paths.get("D:\Backup\MyStuff.txt");Files.copy(source, target, REPLACE_EXISTING);
拷贝操作时可以使用的属性还包括COPY_ATTRIBUTES (保留文件属性) 和 ATOMIC_MOVE (确保移动事务操作的成功,否则进行回滚)。
移动文件的操作跟拷贝很相似,使用 Files.move(Path source, Path target) 方法。
同样,也可以指定移动操作的属性,使用 Files.move(Path source, Path target, CopyOptions...) 方法里的参数来设置。
import static java.nio.file.StandardCopyOption.*; Path source = Paths.get("C:\My Documents\Stuff.txt"); Path target = Paths.get("D:\Backup\MyStuff.txt"); Files.move(source, target, REPLACE_EXISTING, COPY_ATTRIBUTES);

可以看出,新的用于文件操作的 NIO.2 API 非常便于使用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
黑马程序员
2017-03-07 · 改变中国IT教育,我们正在行动
黑马程序员
黑马程序员为大学毕业后,有理想、有梦想,想从事IT行业的年轻人改变自己的命运。黑马程序员成就IT黑马
向TA提问
展开全部
创建和删除文件

下面的代码片段向你展示的是用 Files.createFile(Path target) 方法创建文件的基本用法。

1.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

2.Pathfile= Files.createFile(target);

很多时候,出于安全的原因,你可能希望在创建的文件上设置一下属性,例如:是否可读/可写/写执行。

这些属性依赖于文件系统的种类,你需要使用跟文件系统相应的权限辅助类来完成这种操作。例如,PosixFilePermission和PosixFilePermissions 为 POSIX 文件系统设计的。下面的是在POSIX文件系统上的文件设置读

写权限的用法。

1.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

2.Setperms= PosixFilePermissions.fromString("rw-rw-rw-");

3. FileAttribute  

4.Files.createFile(target, attr);

这个 java.nio.file.attribute 包里提供了很多关于 FilePermission 的类。

警告 当创建一个带有权限属性的文件时,请注意包含这个文件的文件夹是否有权限的强制约束。例如,你会发现,由于这些限制,尽管你给创建的文件指定了 rw-rw-rw 权限,实际创建的结果却是 rw-r–r– .

删除文件更简单,使用 Files.delete(Path) 这个方法。

1.Pathtarget = Paths.get("D:\Backup\MyStuff.txt");

2. Files.delete(target);

拷贝和移动文件

下面的代码向你展示的是使用 Files.copy(Path source, Path target) 方法做文件拷贝的基本用法。

1.Pathsource= Paths.get("C:\My Documents\Stuff.txt");

2.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

3. Files.copy(source, target);

经常的,在拷贝文件的过程中你可能希望指定一些操作设置。在Java7里,你可以通过使用 StandardCopyOption enum 来设置这些属性。下面看一个例子。

importstatic java.nio.file.StandardCopyOption.*;Path source = Paths.get("C:\My Documents\Stuff.txt");Path target = Paths.get("D:\Backup\MyStuff.txt");Files.copy(source, target, REPLACE_EXISTING);

拷贝操作时可以使用的属性还包括COPY_ATTRIBUTES (保留文件属性) 和 ATOMIC_MOVE (确保移动事务操作的成功,否则进行回滚)。

移动文件的操作跟拷贝很相似,使用 Files.move(Path source, Path target) 方法。

同样,你也可以指定移动操作的属性,使用 Files.move(Path source, Path target, CopyOptions…) 方法里的参数来设置。

1.importstatic java.nio.file.StandardCopyOption.*;

2.Pathsource= Paths.get("C:\My Documents\Stuff.txt");

3.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

4.Files.move(source, target, REPLACE_EXISTING, COPY_ATTRIBUTES);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
育知同创教育
2017-03-20 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
创建和删除文件

下面的代码片段向你展示的是用 Files.createFile(Path target) 方法创建文件的基本用法。

1.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

2.Pathfile= Files.createFile(target);

很多时候,出于安全的原因,你可能希望在创建的文件上设置一下属性,例如:是否可读/可写/写执行。

这些属性依赖于文件系统的种类,你需要使用跟文件系统相应的权限辅助类来完成这种操作。例如,PosixFilePermission和PosixFilePermissions 为 POSIX 文件系统设计的。下面的是在POSIX文件系统上的文件设置读

写权限的用法。

1.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

2.Setperms= PosixFilePermissions.fromString("rw-rw-rw-");

3. FileAttribute

4.Files.createFile(target, attr);

这个 java.nio.file.attribute 包里提供了很多关于 FilePermission 的类。

警告 当创建一个带有权限属性的文件时,请注意包含这个文件的文件夹是否有权限的强制约束。例如,你会发现,由于这些限制,尽管你给创建的文件指定了 rw-rw-rw 权限,实际创建的结果却是 rw-r–r– .

删除文件更简单,使用 Files.delete(Path) 这个方法。

1.Pathtarget = Paths.get("D:\Backup\MyStuff.txt");

2. Files.delete(target);

拷贝和移动文件

下面的代码向你展示的是使用 Files.copy(Path source, Path target) 方法做文件拷贝的基本用法。

1.Pathsource= Paths.get("C:\My Documents\Stuff.txt");

2.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

3. Files.copy(source, target);

经常的,在拷贝文件的过程中你可能希望指定一些操作设置。在Java7里,你可以通过使用 StandardCopyOption enum 来设置这些属性。下面看一个例子。

importstatic java.nio.file.StandardCopyOption.*;Path source = Paths.get("C:\My Documents\Stuff.txt");Path target = Paths.get("D:\Backup\MyStuff.txt");Files.copy(source, target, REPLACE_EXISTING);

拷贝操作时可以使用的属性还包括COPY_ATTRIBUTES (保留文件属性) 和 ATOMIC_MOVE (确保移动事务操作的成功,否则进行回滚)。

移动文件的操作跟拷贝很相似,使用 Files.move(Path source, Path target) 方法。

同样,你也可以指定移动操作的属性,使用 Files.move(Path source, Path target, CopyOptions…) 方法里的参数来设置。

1.importstatic java.nio.file.StandardCopyOption.*;

2.Pathsource= Paths.get("C:\My Documents\Stuff.txt");

3.Pathtarget= Paths.get("D:\Backup\MyStuff.txt");

4.Files.move(source, target, REPLACE_EXISTING, COPY_ATTRIBUTES);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式