Java输入/输出(IO)

(1)IO(输入/输出)是比较抽象的,看不到明显的运行效果,但输入和输出是所有程序都必需的部分。使用输入机制,允许程序读取外部数据(包括来自磁盘、光盘等存储设备的数据、来自网络的数据)、用户输入数据;使用输出机制,允许程序记录运行状态,将程序数据输出到磁盘、光盘等存储设备中和网络其他设备中。
(2)Java的IO通过java.io包下的类和接口来支持,在java.io包下主要包括输入流、输出流两种IO流,每种输入、输出流又可分为字节流和字符流两大类。其中字节流以字节为单位来处理输入、输出操作,而字符流则以字符来处理输入、输出操作。除此之外Java的IO流使用了一种装饰器设计模式,它将IO流分成底层节点流和上层处理流,其中节点流用于和底层的物理存储节点直接关联(不同的物理节点获取节点流的方式可能存在一定的差异),但程序可以把不同的物理节点流包装成统一的处理流,从而允许程序使用统一的输入、输出代码来读取不同的物理存储节点的资源。
1、File类
(1)File类是java.io包下代表与平台无关的文件和目录的类。在程序中操作文件和目录,都可以通过File类来完成。需要注意的是,不管是文件还是目录都是使用File来操 作的,File能新建、删除、重命名文件和目录,但是File不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。

public class Demo1 {
	public static void main(String[] args) throws IOException{
		// windows的路径 D:\目录\目录\ 由于\为转义字符 应该写为 D:\\目录\\目录\\         
		// linux或者unix的路径为 /Home/.....         
		// 在Java支持将/当作平台无关的分隔符。
		System.out.println("与系统有关的路径分隔符(String)‐‐>" + File.pathSeparator);
		System.out.println("与系统有关的路径分隔符(char)‐‐>" + File.pathSeparatorChar);
		System.out.println("与系统有关的默认名称分隔符(String)‐‐>" + File.separator);
		System.out.println("与系统有关的默认名称分隔符(char)‐‐>" + File.separatorChar);
		// 访问文件名相关方法    
		File file = new File("F:/Java/");
//		File file = new File("F:/Java/ HelloWorld");
		System.out.println("文件(目录)名称:" + file.getName());
		System.out.println("文件(目录)路径:" + file.getPath());
		System.out.println("文件(目录)绝对路径:" + file.getAbsolutePath());
		System.out.println("文件(目录)的父目录:" + file.getParent());
		if (file.isDirectory()) {
			String[] strings = file.list();// 获取子文件和子目录 
			System.out.println("当前目录下的子文件和子目录");
			for (String string : strings) {
				System.out.print(string+" , ");
			}
		}
		
		//创建目录 
		System.out.println("-------创建目录-----------");
		File fileDir = new File("E:/ABC/a");
		if (!fileDir.exists() || !file.isDirectory()) {
			System.out.println(fileDir.mkdir());
		}
		
		// 创建文件         
		System.out.println("‐‐‐‐‐‐‐创建文件‐‐‐‐‐‐‐‐‐‐‐");
		File file2 = new File("E:/技术文献/");
		System.out.println("文件是否存在" + file2.exists());
		System.out.println(file2.createNewFile());
		
		// 读写执行         
		System.out.println("是否可写:" + file2.canWrite());
		System.out.println("是否可读:" + file2.canRead());
		System.out.println("是否可执行:" + file2.canExecute());
		System.out.println("是否是目录:" + file2.isDirectory());
		System.out.println("是否可文件:" + file2.isFile());
		System.out.println("是否绝对路径:" + file2.isAbsolute()); 
		System.out.println("是否隐藏:" + file2.isHidden());
		
		// ‐‐‐‐创建一个文件         
		System.out.println("‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐");
		File file3 = new File("F:/Java/ HelloWorld.java");
		System.out.println("创建文件:"  + file3.createNewFile());
		System.out.println("文件存在:" + file3.exists());
		System.out.println("删除文件:" + file3.delete());
		System.out.println("文件存在:" + file3.exists());
		System.out.println("创建文件:" + file3.createNewFile());
		System.out.println("文件大小:" + file3.length());
		System.out.println("文件后修改时间:" + file3.lastModified());
		file3.renameTo(new File("F:/Java/ HelloWorlds.java"));// 重命名
		
		System.out.println("‐‐‐‐‐‐‐‐deleteOnExit‐‐‐‐‐‐‐‐‐‐‐‐");
		File file4 = new File("F:/Java/ HelloWorlds.java");
		System.out.println("创建文件file4:" + file4.createNewFile());
		file4.deleteOnExit();//程序退出时删除文件 

	}
}

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值