Javase基础学习笔记之IO流(1)

来源:互联网 发布:黑客用什么数据库 编辑:程序博客网 时间:2024/04/28 00:02


----------------------          IO流                       ---------------------

dsfsdf

IO:处理设备数据

输出:核心到外围设备

流就是一种系统资源,使用完后一定要释放

FileMethod.java

package cn.itcast.file;import java.io.File;import java.io.IOException;import java.text.DateFormat;import java.util.Date;public class FileMethod {/** * @param args * @throws IOException  */public static void main(String[] args) throws IOException {// TODO Auto-generated method stubFile file3 =new File("c:\\abc\\3m.txt");File filet =new File("demo.txt");File file=new File("d:\\38.txt");//file.createNewFile();//Method1(file);//method2(file);System.out.println(file.getFreeSpace());}private static void method2(File file) throws IOException {//create/*boolean b=file.createNewFile();//文件存在,则不创建返回false,不存在才会创建并返回trueSystem.out.println(b);*///delete//删除文件夹时必须保证该文件病人没有内容。从最里往外删//boolean b =file.delete();System.out.println("ext"+file.exists());//创建文件夹boolean bt =file.mkdirs();//System.out.println(bt);System.out.println("file"+file.isFile());System.out.println("dir"+file.isDirectory());}private static void Method1(File file) {//获取绝对路径String path =file.getAbsolutePath();//获取file对象的封装路径,封装的是什么 获取的就是什么String path1=file.getPath();//获取文件最后一次修改时间,long time=file.lastModified();Date date =new Date(time);DateFormat dateformat =DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);String str_date=dateformat.format(date);//文件是否隐藏boolean b=file.isHidden();System.out.println(b);System.out.println(str_date);System.out.println(time);System.out.println(path);System.out.println(path1);}}


File dir = new File("c:\\");// 当前目录下的所有文件和文件夹名称包含隐藏文件// 只获取名称/* * String[] names =dir.list(); System.out.println(names); * if(names!=null) for(String name : names){ System.out.println(name); } */File[] files = dir.listFiles();for (File file : files) {System.out.println(file);System.out.print(file.length());}
----------------------          过滤器                       ---------------------

FileTest.java

package cn.itcast.file;import java.io.File;import java.io.FilenameFilter;import cn.itcast.filter.FilterByContain;import cn.itcast.filter.FilterBySuffic;public class FileTest {public static void main(String[] args) {//list(FilenameFilter filter)File dir =new File("c:\\");FilenameFilter filter =new FilterBySuffic(".java"); //多态filter =new FilterByContain("Test");//传过滤器String[] names =dir.list(filter);for(String name:names){System.out.println(name);}}}

FilterBySuffix

package cn.itcast.filter;import java.io.File;import java.io.FilenameFilter;/* * 根据文件后缀名过滤 */public class FilterBySuffic implements FilenameFilter {private String suffix;public FilterBySuffic(String suffix) {super();this.suffix = suffix;}/* * (non-Javadoc) * name 被遍历目录中的文件夹或者文件名称 * @see java.io.FilenameFilter#accept(java.io.File, java.lang.String) */@Overridepublic boolean accept(File dir, String name) {return name.endsWith(suffix);}}
FilterByContain
package cn.itcast.filter;import java.io.File;import java.io.FilenameFilter;public class FilterByContain implements FilenameFilter {private String content;public FilterByContain(String content) {super();this.content = content;}@Overridepublic boolean accept(File dir, String name) {return name.contains(content);}}
----------------------          获取指定目录内容   

GetAllFile

package cn.itcast.file.demo;import java.io.File;public class GetAllFile {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stub/* * 获取指定目录下的内容 * 递归:函数自身调用自身, * 功能被重复使用,但是每次参与运算数据不同时,可以考虑 *  */File dir =new File("F:\\h\\record");getAllFiles(dir);}private static void getAllFiles(File dir) {System.out.println("dir:"+dir);// TODO Auto-generated method stub//获取目录文件对象数组File[] files =dir.listFiles();//数组遍历for(File f : files){if(f.isDirectory()){getAllFiles(f);}elseSystem.out.println("file:"+f);}}}







0 0
原创粉丝点击