Java BufferedWriter与BufferedReader操作文本文件

/**

 * 采用字符流读取写入文本文件

 */

public class FileUtil {

    

    /**

     * 写文件

     * @param fileName

     * @param content

     */

    public static void writeFile(String fileName, String content){

        FileWriter output = null;

        BufferedWriter writer = null;

        try{

            output = new FileWriter(fileName);

            writer = new BufferedWriter(output);

            writer.write(content);

        }catch(Exception e){

            e.printStackTrace();

        }finally{

            if(null != writer){

                try {

                    writer.close();

                } catch (IOException e) {

                    // TODO Auto-generated catch block

                    e.printStackTrace();

                }

            }

            if(null != output){

                try {

                    output.close();

                } catch (IOException e) {

                    // TODO Auto-generated catch block

                    e.printStackTrace();

                }

            }

        }

    }

    

    /**

     * 读文件

     * @param fileName

     * @return

     */

    public static String readFile(String fileName){

        StringBuffer sb = new StringBuffer("");

        FileReader input = null;

        BufferedReader reader = null;

        try{

            input = new FileReader(fileName);

            reader = new BufferedReader(input);

            String line = null;

            while((line = reader.readLine()) != null){

                sb.append(line);

            }

        }catch(Exception e){

            e.printStackTrace();

        }finally{

            if(null != reader){

                try {

                    reader.close();

                } catch (IOException e) {

                    // TODO Auto-generated catch block

                    e.printStackTrace();

                }

            }

            if(null != input){

                try {

                    input.close();

                } catch (IOException e) {

                    // TODO Auto-generated catch block

                    e.printStackTrace();

                }

            }

        }

        return sb.toString();

    }

}

在使用BufferedWriter写入文件时,如果忘记关闭文件(close)同时也没有调用flush(),则被写入的文件中是没有内容的。在关闭文件的

同时系统会自动调用flush()。

你可能感兴趣的:(bufferedreader)