IO相关类

来源:互联网 发布:软件解锁功能 编辑:程序博客网 时间:2024/04/27 17:22

1,Properties    

package javaBase;import java.io.FileNotFoundException;import java.io.PrintStream;import java.util.*;public class SystemDemo {public static void main(String[] args) {//Properties 是一个MapProperties prop = System.getProperties();prop.setProperty("name", "xukunn");String name = prop.getProperty("name");System.out.println("name = "+name);//增强型for循环for(Object obj:prop.keySet()){String value = (String)prop.get(obj);System.out.println(obj+"::"+value);}}/** * properties输出到文件 */public static void list2File(Properties prop) throws FileNotFoundException{prop.list(new PrintStream("systemInfo.txt"));}/** * properties输出到控制台 */public static void list2Console(Properties prop) {prop.list(System.out);}}

properties练习

package javaBase.io.others;import java.io.*;import java.util.*;public class PropertiesDemo {public static void main(String[] args) throws IOException {//setGet();//getIni("sys.ini");loadStore();}/* * properties 自带的方法读取 */public static void loadStore() throws IOException{Properties prop = new Properties();FileInputStream in = new FileInputStream("sys.ini");prop.load(in);System.out.println(prop);prop.setProperty("sunhao", "18");FileOutputStream out = new  FileOutputStream("sys.ini");prop.store(out, "haha");prop.list(System.out);out.close();in.close();}public static void setGet(){Properties prop = new Properties();prop.setProperty("xukunn", 26+"");//全是字符串prop.setProperty("rambo", "35");Set<String> names = prop.stringPropertyNames();//提取keyfor(String name:names){System.out.println(name+": "+prop.getProperty(name));}}/* * 从文件读取 */public static void getIni(String fileName) throws IOException{BufferedReader br = new BufferedReader(new FileReader(fileName));Properties prop = new Properties();String line = null;while((line = br.readLine())!=null){String [] ary = line.split("=");prop.setProperty(ary[0], ary[1]);}System.out.println(prop);br.close();}}


2.File类

package javaBase.io.others;import java.io.File;import java.io.FilenameFilter;import java.io.IOException;/* * File类   */public class FileDemo {public static void main(String[] args) throws IOException{File f1 = new File("e:\\abc","a.txt");//如果文件已经存在,不创建。。。而用输出流的话会覆盖File f2 = new File("e:"+File.separator+"abc"+File.separator+"b.txt");//可以跨平台if(!f1.exists()){f1.createNewFile();//如果abc目录不存在,会抛异常找不到指定路径}f2.createNewFile();f2.deleteOnExit();//程序退出删除f1.delete();//直接删除listDemo(f1.getParentFile());//获取f1当前目录listFilter(new File("E:\\Admin\\workspace\\itHeima"));list();}/* * 返回当前目录下的所有文件名 */public static void listDemo(File file){String[] names = file.list();//file封装了一个目录,必须存在for(String name :names){System.out.println(name);}}/* * 列出当前目录下的所有txt文件 */public static void listFilter(File file){String[] names = file.list(new FilenameFilter() {@Overridepublic boolean accept(File dir, String name) {//System.out.println("dir:  "+dir+"name: "+name);//当不清楚参数可以打印一下看看return name.endsWith(".txt");}});for(String name:names){System.out.println(name);}}/* * 列出文件,不仅仅是文件名 */public static void list(){File dir = new File("E:\\Admin\\workspace\\itHeima");File[] files = dir.listFiles();//File包含了很多有用信息for(File f:files){System.out.println(f.getName()+"::"+f.length());}}}

递归删除目录下的所有文件

package javaBase.io.others;import java.io.File;public class DeleteDir {public static void main(String[] args) {removeDir(new File("c:\\temp"));}/* * windows删除是从里往外删,递归 */public static void removeDir(File dir){File[] files = dir.listFiles();for(File f:files){if(f.isDirectory())removeDir(f);elsef.delete();}dir.delete();//如果不写这一句,文件都删了,目录都还在}}


0 0
原创粉丝点击