iO练习题
Posted 习惯有迩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iO练习题相关的知识,希望对你有一定的参考价值。
package com.wl.cases; import java.io.File; /** * (二) 递归实现输入任意目录,列出文件以及文件夹,效果看图 * @author wanglu * @date 2016-11-08 */ public class CaseDemo_2 { public static void main(String[] args) { File file = new File("D:"); printMkdirs(file); } /* * 使用递归调用的方式 */ public static void printMkdirs(File file){ File[] listFiles = file.listFiles(); if(listFiles==null || listFiles.length<0 ) return; for (int i = 0; i < listFiles.length; i++) { if(listFiles[i].isDirectory()){ System.out.println(listFiles[i].getAbsolutePath()); printMkdirs(listFiles[i]); }else{ System.out.println(listFiles[i].getAbsolutePath()); } } } }
package com.wl.cases; import java.io.File; /** * (三) 递归实现列出当前工程下所有.java文件 * @author wanglu * @date 2016-11-08 */ public class CaseDemo_3 { public static void main(String[] args) { File file = new File("E:\\eclipset\\workspace\\IoDemo"); printProject(file); } public static void printProject(File file){ File[] listFiles = file.listFiles(); if(listFiles==null || listFiles.length<0) return; for (int i = 0; i < listFiles.length; i++) { if(listFiles[i].isDirectory()){ //listFiles[i].getName().contains(".java") printProject(listFiles[i]); }else{ /*if(listFiles[i].getName().contains(".java")){ System.out.println(listFiles[i].getName()); }*/ if(listFiles[i].toString().endsWith(".java")){ System.out.println(listFiles[i].getName()); } } } } }
package com.wl.cases; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; /** * (四)从磁盘读取一个文件到内存中,再打印到控制台 * @author wanglu * @date 2016-11-08 */ public class CaseDemo_4 { public static void main(String[] args) { File file = new File("C:\\Users\\wanglu\\Desktop\\HelloWorld.txt"); printConsole(file); } public static void printConsole(File file){ //创建一个字节缓冲输入流 BufferedInputStream bs = null; InputStreamReader ir = null; try { //创建一个字节输入流 FileInputStream fs = new FileInputStream(file); bs = new BufferedInputStream(fs); //创建一个转换流,从字节---字符的转换 ir = new InputStreamReader(bs); //此处表示创建一个长度跟文件长度大小一样的数组(此处需要改进) char[] b = new char[(int)file.length()]; int len; StringBuffer sb = new StringBuffer(); if((len = ir.read(b))!= -1){ sb.append(new String(b,0,len)); } System.out.println(sb); }catch (IOException e) { e.printStackTrace(); }finally{ if(ir!=null) try { ir.close(); } catch (IOException e) { e.printStackTrace(); } if(bs != null) try { bs.close(); } catch (IOException e) { e.printStackTrace(); } } } }
package com.wl.cases; import java.io.FileWriter; import java.io.IOException; /** * (五) 在程序中写一个"HelloJavaWorld你好世界"输出到操作系统文件Hello.txt文件中 * @author wanglu * @date 2016-11-08 */ public class CaseDemo_5 { public static void main(String[] args) { printToFile(); } public static void printToFile(){ //定义一个字符输出流 FileWriter fw = null; try { //定义一个字符串 String str = "HelloJavaWorld你好世界"; fw = new FileWriter("Hello.txt"); fw.write(str); } catch (IOException e) { e.printStackTrace(); }finally{ if(fw != null) try { fw.close(); } catch (IOException e) { e.printStackTrace(); } } } }
package com.wl.cases; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /* * (六) 拷贝一张图片,从一个目录到另外一个目录下 * 注: 除文本文件外,其他类型的文件都需要要字节流处理 * 所以此处我们需要用到字节流 */ public class CaseDeom_6 { public static void main(String[] args) { File file = new File("C:\\Users\\wanglu\\Desktop\\1.png"); File saveFile = new File("save.png"); copyPhoto(file,saveFile); } public static void copyPhoto(File file,File saveFile){ //创建字节缓冲输入流(加速) BufferedInputStream bs = null; //创建字节缓冲输出流(加速输出) BufferedOutputStream bo = null; try { //创建字节输入流 FileInputStream fs = new FileInputStream(file); bs = new BufferedInputStream(fs); //创建字节输出流 FileOutputStream fo = new FileOutputStream(saveFile); bo = new BufferedOutputStream(fo); byte[] b = new byte[1024]; int len; while((len = bs.read(b))!= -1){ bo.write(b, 0, len); bo.flush(); } }catch (IOException e) { e.printStackTrace(); }finally{ if(bo != null) try { bo.close(); } catch (IOException e) { e.printStackTrace(); } if(bs != null) try { bs.close(); } catch (IOException e) { e.printStackTrace(); } } } }
以上是关于iO练习题的主要内容,如果未能解决你的问题,请参考以下文章
java内存流:java.io.ByteArrayInputStreamjava.io.ByteArrayOutputStreamjava.io.CharArrayReaderjava.io(代码片段
iOS开发CGRectGetMidX. CGRectGetMidY.CGRectGetMinY. CGRectGetMaxY. CGRectGetMinX. CGRectGetMaxX的使用(代码片段