java基本的读写文件操作


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("================移动文件还原操作完成==================");






}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值