java I/O相关

Posted 星空6

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java I/O相关相关的知识,希望对你有一定的参考价值。

I/O相关 输入/输出 流(数据流动)

数据流动的方向  读数据(输入input)  写数据(输出 output)

文件流  字符流  数据流 对象流  网络流

1.什么叫文件?

  一种电脑的存储形式

  文件有不同的格式 .txt  .doc  .ppt  .mp4  .jpg  .rar

  文件夹?--目录路径

  File-->与电脑上的文件或文件夹产生一 一对应的映射关系

  1.File是一个类 java.io包中  可以表示 文件或目录路径名;

  2.File与真实硬盘中的文件或文件夹 不是一个东西

    File是在内存中的一个对象  ---映射 --硬盘上

  3.File类中的常用的方法

canRead() canWrite() isHidden() isDirectory()

length()  lastModified() 

getAbsolutePath();//绝对路径  getName();

createNewFile() //创建新的文件

mkdir() //创建新的文件夹 外层没有 不能创建

mkdirs(); //创建新的文件夹 外层没有 可以自动创建

String a=getParent() //获取当前file的父亲file名字

File a=getParentFile()  //获取当前file的父亲file对象

String[] a=list() //获取当前file的所有儿子名字

File[] a=listFiles() //获取当前file的所有儿子对象

boolean a=delete() //删除文件空的文件夹 不能删除带元素的文件夹

绝对路径<--->相对路径

绝对路径可以通过完整的字符串 定位盘符 文件夹 文件

相对路径没有盘符的写法  当前(java)项目所在的位置找寻(作为根目录)

import java.io.File;
import java.util.*;
import java.text.*;
public class TestMain{		
	public static void main(String[] args){			
		//File f=new File("D://java//object//Test0528.txt");
		File f=new File("D:\java\object\Test0528.txt");
		System.out.println(f.canExecute());
		System.out.println(f.canRead());
		System.out.println(f.canWrite());
		System.out.println(f.isHidden());
		System.out.println(f.isFile());//文件
		System.out.println(f.isDirectory());//目录
		System.out.println(f.length());
		System.out.println(f.lastModified());
		Date date=new Date(f.lastModified());
		SimpleDateFormat sdate=new SimpleDateFormat("yyyy-MM-dd KK:mm:ss");
		System.out.println(sdate.format(date));	
		System.out.println(f.getAbsolutePath());
		System.out.println(f.getName());
	}
}
import java.io.*;
public class TestMain{		
	public static void main(String[] args){		
		File k=new File("D:\java\object\bbb\ccc");
		System.out.println(k.mkdir());//无编译时异常//若bbb不存在,则创建不了
		System.out.println(k.mkdirs());////若bbb不存在,可以创建成功;
	
		//File f=new File("D:\java\object\abc.txt");	
		File f=new File("D:\java\object\abc");
		try{
			boolean v=f.createNewFile();//编译时异常
			System.out.println(v);
		}catch(IOException e){
			e.printStackTrace();
			
		}//创建文件;
		
	}
}
import java.io.*;
public class TestMain{		
	public static void main(String[] args){		
		File f=new File("D:\java\object\Test0528.txt");
		String pn=f.getParent();
		System.out.println(pn);
		File pf=f.getParentFile();
		System.out.println(pf.getAbsolutePath());
		while(pf!=null){//遍历当前文件的父目录
			System.out.println(pf.getAbsolutePath());
			pf=pf.getParentFile();//再找一遍;
		}
		
	}
}
import java.io.*;
public class TestMain{		
	public static void main(String[] args){		
		File f=new File("D:\java\object\bbb\ccc");//
		File[] fs=f.listFiles();//数组对象为空 证明当前的f是文件;
								//数组对象为空   证明当前的f是一个文件夹
		System.out.println(fs);
		System.out.println(fs.length);//数组对象的长度不为0  证明当前的f是一个不为空的文件夹
		//递归算法--遍历文件夹;
		boolean v=f.delete();//删掉文件或空文件夹 //回收站无法找回
		System.out.println(v);
		
	}
}

  

  

 

2.什么叫文件流?

  读取文件中的内容    向文件中写内容

  文件输入流       文件输出流

  字节型文件输入流    字节型文件输出流

  字符型文件输入流    字符型文件输出流

 

以上是关于java I/O相关的主要内容,如果未能解决你的问题,请参考以下文章

五种I/O模型和Java NIO源码分析

I/O流的相关知识

Java 中的 I/O 抽象

JAVA中I/O流的使用

I/O流 线程

Java I/O不迷茫,一文为你导航!