Java学习笔记之IO(一):File类的用法

本文介绍了Java中的File类基本用法,包括构造方法、文件和目录判断,以及路径分隔符、绝对路径和相对路径的概念。通过测试方法展示了如何创建File对象、检查文件和目录的存在,以及处理不同系统的路径问题。
摘要由CSDN通过智能技术生成
package com.io;
 
import java.io.File;
 
import org.junit.Test;
 
/*
IO流,也叫输入输出流(input、 output);
IO技术主要的作用使解决设备与设备之间的数据传输问题;比如:硬盘-->内存;    内存-->硬盘;
IO技术的应用场景:导出报表、上传、下载、解析xml文件...
数据一般是以文件的形式保存到硬盘上的;于是sun公司就使用了一个 File 类来描述文件或者文件夹;
 */
 
public class Demo1 {
 
	/*
	File类的构造方法:
		File(String pathname):根据指定路径的文件或者文件夹创建一个File类对象;
		File(File parent, String child):根据parent路径名对应的File对象和child路径名创建一个File对象;
		File(String parent, String child):根据parent路径名和child路径名创建一个File对象;
	 */	
	@Test
	public void test1(){
		// 根据指定路径的文件或者文件夹创建一个File类对象;
		File file1 = new File("D:\\a.text");
		System.out.println("文件存在吗?" + file1.exists()); // exist():判断文件是否存在;
		
		File file2 = new File("D:\\");
		System.out.println("文件夹存在吗?" + file2.exists());
 
		File file3 = new File("D:\\test");
		System.out.println("文件夹存在吗?" + file3.exists());
	}
	
	@Test
	public void test2(){
		File parentFile = new File("D:\\");
		File file = new File(parentFile, "a.txt");
		System.out.println("文件是否存在:" + file.exists());
		
		File file2 = new File("D:\\", "a.txt");
		System.out.println("文件是否存在:" + file2.exists());
	}
	
	
	/*	
	目录分隔符:在Windows系统上的目录分隔符是\,该符号不能单独使用,需要转义(\);在linux系统上的目录分隔符是/;
		但是,windows系统可以使用两种目录分隔符,写成/也可以,而且只需要写一个/就行;
		其他操作系统都是只认一种目录分隔符;
	 */
	@Test
	public void test3(){
		// File.separator:获取当前系统所使用的目录分隔符;Java会自动匹配当前系统,获取对应的目录分隔符;
		System.out.println(File.separator);	
		
		String filepath = "D:" + File.separator + "a.txt";
		System.out.println("文件路径:" + filepath);	// 文件路径:D:\a.txt
	}
	
	
	/*
	路径问题:
		绝对路径:该文件在硬盘上的完整路径;一般都是以盘符开头的; 
		相对路径:资源文件相对于当前程序所在的路径;
			. 代表当前路径;
			.. 代表上一级路径;
			注意:如果资源文件与当前程序不在同一个盘符下面,是无法写出相对路径的;
	 */
	@Test
	public void test4(){
		File file = new File(".");
		System.out.println("获取当前程序的绝对路径:" + file.getAbsolutePath());
		
		File file2 = new File("..\\..\\..\\a.txt");
		System.out.println("文件是否存在:" + file2.exists());
		
		// 如果在src目录下创建一个新的文件b.txt,那么相对路径可以直接写成下面的样式;
		File file3 = new File("src\\b.txt");
		System.out.println("文件是否存在:" + file3.exists());
	}
	
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值