java编程IO简单回顾和学习
java编程IO操作必不可少的,很久不玩IO,回顾一下,写了几个小程序,记录一下,方便查阅和学习。
1.给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印。
package com.io.test; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import org.apache.jasper.tagplugins.jstl.core.ForEach; public class SortAndPrint { //给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印。 public static void main(String[] args) throws IOException { int[] arr={3,4,6,78,90,1}; //新建一个文件 File file=new File("d:\\sort.txt"); FileWriter fw=new FileWriter(file); String string=""; for (int i = 0; i < arr.length; i++) { int num = arr[i]; string+=num+","; } System.out.println(string); try { fw.write(string); fw.flush(); } catch (IOException e) { e.printStackTrace(); }finally{ try { fw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } //从文件中读取 FileReader fr=new FileReader(file); BufferedReader bfr=new BufferedReader(fr); StringBuilder sb=new StringBuilder(); int ch = 0; String str=null; while((str=bfr.readLine())!=null ) { sb.append(str); } fr.close(); bfr.close(); String[] split = sb.toString().split(","); int[] ints = StringToInt(split); //进行排序 int[] sort2 = sort(ints); for (int i = sort2.length-1; i>0; i--) { System.out.println(sort2[i]); } } //将字符串数组转换为整数数组 public static int[] StringToInt(String[] strs){ int num=strs.length; int[] arrs=new int[num]; for (int i = 0; i < strs.length; i++) { arrs[i]=Integer.parseInt(strs[i]); } return arrs; } //冒泡排序 public static int[] sort(int[] arr){ int num=arr.length; int temp=0; for (int i = num-1; i>0; i--) { for(int j=0;j<i;j++){ //冒泡法 if(arr[j]>arr[i]){ //互换位置 temp=arr[j]; arr[j]=arr[i]; arr[i]=temp; } } } return arr; } }
2.遍历一个 文件夹中的所有文件。
package com.io.test; import java.io.File; public class FileBianLi { //遍历 文件夹中的所有文件 public static void main(String[] args) { //得到要遍历的目录文件夹 File file=new File("e:\\"); showAllFile(file); } public static void showAllFile(File file){ //获取所有子文件 File[] files = file.listFiles(); //判断文件类型 if(!file.isDirectory()){ System.out.println("文件:"+file.getAbsolutePath()); }else{ if(files==null||files.length==0){ System.out.println("空目录:"+file.getAbsolutePath()); }else{ //遍历files System.out.println("目录:"+file.getAbsolutePath()); for (File f : files) { showAllFile(f); } } } } }
业务驱动技术,技术是手段,业务是目的。