代码&优雅着&生活

导航

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);
                }
            }
        }
        
    }

}

 

posted on 2015-10-16 10:13  幸运的凌人  阅读(345)  评论(0编辑  收藏  举报