您的位置:首页 > 编程语言 > Java开发

java基本的读写文件操作

2012-12-19 13:28 435 查看
  package com.hzsuwang.java;

import java.io.BufferedOutputStream;

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.InputStream;

import java.io.InputStreamReader;

import junit.framework.TestCase;

/**

 * Unit test for simple App.

 */

public class AppTest extends TestCase {

    String filename = "/home/yan/temp/javastudy/javaio/src/test/java/com/hzsuwang/java/javaio.txt";

    /**

     * 写文件操作

     *

     * @throws Exception

     */

    public void testReadTxt() throws Exception {

        System.out.println(filename);

        FileReader reader = new FileReader(filename);

        int l = 0;

        while ((l = reader.read()) != -1) {

            char type = (char) l;

            System.out.print(type);

        }

        reader.close();

        System.out.println("==================================");

        InputStream in = new FileInputStream(filename);

        InputStreamReader reader2 = new InputStreamReader(in);

        int l2 = 0;

        while ((l2 = reader2.read()) != -1) {

            char type = (char) l2;

            System.out.print(type);

        }

        reader2.close();

        in.close();

        System.out.println("==================================");

        FileReader reader3 = new FileReader(filename);

        BufferedReader bReader = new BufferedReader(reader3);

        String lineString = null;

        while ((lineString = bReader.readLine()) != null) {

            System.out.println(lineString);

        }

        bReader.close();

        reader3.close();

        System.out.println("==================================");

    }

    /**

     * 写文件操作

     *

     * @throws Exception

     */

    public void testWriteTxt() throws Exception {

        FileWriter fileWriter = new FileWriter(filename, true);

        String str1 = "\r\nFileWriter test";

        fileWriter.write(str1);

        fileWriter.close();

        System.out.println("================写入文件完成==================");

        FileOutputStream output = new FileOutputStream(filename, true);

        String str2 = "\r\nFileOutputStream test";

        output.write(str2.getBytes());

        output.close();

        System.out.println("================写入文件完成==================");

        FileWriter fileWriter2 = new FileWriter(filename, true);

        BufferedWriter bufferedWriter = new BufferedWriter(fileWriter2);

        String str3 = "\r\nbufferedWriter test";

        bufferedWriter.write(str3);

        bufferedWriter.flush();

        bufferedWriter.close();

        System.out.println("================写入文件完成==================");

    }

    /**

     * copy文件操作

     *

     * @throws Exception

     */

    public void testCopyFile() throws Exception {

        String src = "/home/yan/download/software/ideaIU-10.tar.gz";

        String desc = "/tmp/";

        File file = new File(src);

        FileInputStream fileInputStream = new FileInputStream(file);

        File dfileFile = new File(desc + file.getName());

        if (!dfileFile.exists()) {

            dfileFile.createNewFile();

        }

        FileOutputStream out = new FileOutputStream(dfileFile);

        BufferedOutputStream bufferedWriter = new BufferedOutputStream(out);

        byte[] bytes = new byte[1024];

        int wdata;

        while ((wdata = fileInputStream.read(bytes, 0, bytes.length)) != -1) {

            bufferedWriter.write(bytes, 0, wdata);

        }

        fileInputStream.close();

        out.close();

        bufferedWriter.close();

        System.out.println("================copy文件操作完成==================");

        dfileFile.delete();

    }

    /**

     * 移动文件操作

     *

     * @throws Exception

     */

    public void testMoveFile() throws Exception {

        String src = "/home/yan/download/software/ideaIU-10.tar.gz";

        String desc = "/tmp/";

        File file = new File(src);       

        File dfileFile = new File(desc + file.getName());       

        if (!dfileFile.exists()) {

            dfileFile.createNewFile();

        }

        FileInputStream fileInputStream = new FileInputStream(file);

        FileOutputStream out = new FileOutputStream(dfileFile);

        BufferedOutputStream bufferedWriter = new BufferedOutputStream(out);

        byte[] bytes = new byte[1024];

        int wdata;

        while ((wdata = fileInputStream.read(bytes, 0, bytes.length)) != -1) {

            bufferedWriter.write(bytes, 0, wdata);

        }

       

        fileInputStream.close();

        out.close();

        bufferedWriter.close();

        file.delete();

        System.out.println("================移动文件操作完成==================");       

       

        if (!file.exists()) {

            file.createNewFile();

        }       

        FileInputStream restoreFileInputStream = new FileInputStream(dfileFile);

        FileOutputStream restoreOut = new FileOutputStream(file);

        BufferedOutputStream restoreBufferedWriter = new BufferedOutputStream(restoreOut);

        byte[] restoreBytes = new byte[1024];

        int restoreWdata;

        while ((restoreWdata = restoreFileInputStream.read(restoreBytes, 0, restoreBytes.length)) != -1) {

            restoreBufferedWriter.write(restoreBytes, 0, restoreWdata);

        }       

        restoreFileInputStream.close();

        restoreOut.close();

        restoreBufferedWriter.close();

        dfileFile.delete();

        System.out.println("================移动文件还原操作完成==================");

       

       

       

       

       

       

    }

}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: