`
oywl2008
  • 浏览: 1052630 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java7新特性IO操作Files .

 
阅读更多
package Test1;
import java.io.IOException;
import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.LinkOption;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.Date;

/**
 * Files类主要是用来对文件的
 * @author zKF57533
 */
public class TestFiles {
	/**
	 * 非常方便的对文件进行移动操作
	 * 将tt.txt从pathFrom文件夹位置移动到pathTo文件夹下
	 * <h1>此方法可以和copy这个方法相比较,用法相同,其他增删改查操作请参考api即可</h1>
	 * @throws IOException 
	 */
	public static void moveFile() {
		Path pathFrom = Paths.get("e:/logs", "tt.txt");
		//其中e:/logs/errorLog/tt.txt的tt.txt文件可以不存在,如果存在会被替换掉
		Path pathTo = pathFrom.getParent().resolve("errorLog/dd.txt");
		try {
			//文件的大小bytes
			System.out.println(Files.size(pathFrom));
			//调用文件移动方法
			Files.move(pathFrom, pathTo, StandardCopyOption.REPLACE_EXISTING);
		} catch (IOException e) {
			System.err.println("移动文件错误" + e.getMessage());
		}
	}
	
	/**
	 * 测试文件的属性信息
	 * 包括文件的修改时间、是否是文件夹、创建时间等
	 */
	@SuppressWarnings("deprecation")
	public static void fileAttributes(){
		Path path = Paths.get("e:/logs");
		//1
		System.out.println(Files.isDirectory(path, LinkOption.NOFOLLOW_LINKS));
		//2
		try {
			//获得文件的基础属性
			BasicFileAttributes attributes = Files.readAttributes(path, BasicFileAttributes.class);
			System.out.println(attributes.isDirectory());
			System.out.println(new Date(attributes.lastModifiedTime().toMillis()).toLocaleString());
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 创建文件夹
	 * 遍历文件夹下的文件
	 */
	public static void createDir(){
		Path path = Paths.get("e:/test/tte");
		try {
			//创建文件夹
			if(Files.notExists(path)){
				Files.createDirectories(path);
				System.out.println("create dir");
			}else{
				System.out.println("dir exists");
			}
			//在创建的文件夹下建几个txt文件,例如
			//2.txt
			//ff  文件夹
			//java.bat
			//_java.txt
			//遍历文件夹下面的文件
			DirectoryStream<Path> paths = Files.newDirectoryStream(path);
			for(Path p : paths){
				System.out.println(p.getFileName());
			}
			System.out.println();
			//创建一个带有过滤器,过滤文件名以java txt bat结尾的文件
			DirectoryStream<Path> pathsFilter = Files.newDirectoryStream(path, "*.{java,txt,bat}");
			for(Path p : pathsFilter){
				System.out.println(p.getFileName());
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 

http://blog.csdn.net/zhangweiwtmdbf/article/details/7100004 

 

java7新特性IO操作Files

分享到:
评论

相关推荐

    io.pivotal.gemfire - 9.1.1.jar files for springboot-gemfire

    在9.1.1版本中,Gemfire对性能和稳定性进行了优化,同时增加了新的特性,如更丰富的安全配置、改进的故障检测机制以及对Java 9的支持等。 集成Gemfire到SpringBoot应用中,通常需要以下几个步骤: 1. **添加依赖**...

    java.io.FileNotFoundException: *****(Too many open files)

    在Java编程中,"java.io.FileNotFoundException: ***** (Too many open files)" 是一个常见的错误,意味着程序尝试打开的文件数量超过了操作系统的限制。这个错误通常出现在处理大量文件或长时间运行的程序中,尤其...

    java高级特性 - io流.pdf

    Java IO流是Java编程中处理输入输出流的高级特性,其目的是为了提供一个统一的方式来处理不同类型的数据,如文本文件、二进制文件等。Java的IO流是设计来实现数据传输的,主要使用java.io包下的各种类和接口。本篇...

    commons-fileupload-1.3.3.jar和commons-io-2.6.jar

    4. **使用 Commons IO**:在保存文件时,`Commons IO`库提供了方便的方法,如`Files.copy()`,可以用来将上传的文件流安全地写入目标文件。 5. **异常处理**:在处理过程中,要捕获并适当地处理可能出现的异常,如...

    java的io操作源代码

    Java的IO操作是Java编程中的基础且重要的一部分,它提供了对输入输出流的处理,使得程序可以与外部设备(如硬盘、键盘、显示器)进行数据交互。本代码库包含了Java进行基本IO操作的源代码,涵盖了文件的复制、删除、...

    第八次课IO操作二.zip

    NIO.2(Java 7引入)进一步增强了异步IO和文件系统操作的能力。 8. **Channel与Buffer**: NIO的核心是Channel(通道)和Buffer(缓冲区)。Channel代表数据来源或目的地,而Buffer用于临时存储数据,提高了数据...

    优雅的操作文件:java.nio.file 库介绍.pdf

    Java 早期版本的文件I/O操作功能相对有限,存在几个显著问题:不支持现代文件系统特性、API设计复杂且冗长、处理大文件和并发性能不足。为了解决这些问题,Java引入了`java.nio.file`库,这个库极大地提升了Java在...

    Java读写文本文件的示例代码.7z

    Java NIO (New IO) 是从Java 1.4版本引入的一个新特性,提供了更高效和异步的I/O操作。例如,`java.nio.file.Files`类提供了简单易用的文件读写方法: ```java Path path = Paths.get("path/to/your/file.txt"); ...

    Java 7文件操作

    在Java 7中,文件操作得到了显著的改进,引入了`java.nio.file`包,其中最重要的新特性之一就是Path类的出现。Path类是Java 7文件系统接口(FileSystem API)的核心部分,它提供了一种抽象的方式来表示文件或目录的...

    java-IO.rar_io_java IO

    Java 7进一步增强了NIO功能,引入了Path、Paths、Files等类,简化了文件操作,并引入了文件系统观察者(WatchService)。 通过深入学习和实践这些Java IO类和机制,开发者能够灵活地处理各种输入输出任务,无论是...

    java-index-files.rar_java index_java index-fil

    Java索引文件(Java Index Files)是Java开发中不可或缺的一部分,尤其在理解和使用Java文档时。Java 2 Platform Standard Edition 5.0 (J2SE 5.0) API规范是一个详细的技术指南,包含了该版本Java平台的核心类库,...

    高级开发员面试宝典之JavaIO流的操作.docx

    9. **NIO(New IO)**:相对于传统的IO流,NIO提供了哪些新特性?比如选择器(Selector)、通道(Channel)和缓冲区(Buffer)如何协同工作? 10. **异常处理**:在进行IO操作时,常见的异常有哪些?如何正确处理...

    Java岗面试核心MCA版.pdf

    2. Files的常用方法:Files类提供了许多文件操作方法。 反射机制 1. 反射机制的优缺点:反射机制可以动态地调用类和方法,但也可能会增加系统的安全风险。 2. 反射机制的应用场景:反射机制可以用于动态地加载...

    java 课件资料第01节:JAVA IO流.zip

    Java IO流是Java编程语言中处理输入输出操作的重要部分,它是数据传输的通道,允许程序在内存、硬盘、网络等不同设备间交换信息。在Java中,IO流分为字符流和字节流两大类,每类又分别有输入流和输出流四种类型,...

    Java IO合集

    接下来,我们谈谈Java NIO(New IO),这是Java 1.4引入的一个新特性,提供了非阻塞I/O模型。与传统的IO相比,NIO更注重于通道(Channels)和缓冲区(Buffers)的使用,而非流。NIO的主要优点在于其非阻塞特性,可以...

    Scalable IO in Java doug lea.zip

    通过学习《Scalable IO in Java》,开发者能够掌握如何在Java应用程序中有效地利用NIO进行高性能的I/O操作,这对于构建大型、高并发的网络服务,如Web服务器、数据库服务器等,具有重要的指导意义。不过,由于书籍为...

    IO笔记.zip关于javaIO流部分的详细笔记

    Java 1.4引入了NIO(非阻塞IO),提供选择器(Selector)和通道(Channel)等新特性,提高IO操作的效率和并发性能。 十、文件操作 - File类:提供文件和目录的基本操作,如创建、删除、重命名等。 - Files类:提供...

    java1.8 jdk1.8中文帮助文档.chm api下载

    4. **NIO.2**:Java 1.7引入了NIO.2,进一步完善了非阻塞I/O功能,增加了文件系统操作的API,如`java.nio.file`包中的`Paths`、`Files`和`WatchService`,使得文件系统操作更加灵活和强大。 5. **反射和注解**:`...

Global site tag (gtag.js) - Google Analytics