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

极客学院 java 字节读取与文件拷贝 代码笔记

2015-07-21 09:46 483 查看
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

//java 字节流可以处理所有类型的数据,对应的类以Stream结尾,读取时,读到一个字节就返回一个字节

//字符流,只能够处理纯文本数据,对应的类以Reader或者Writer结尾,读取到一个或者多个字符,先查找指定的编码表,在返回查到的字符

public class IODemo {

public static void main(String[] args) {
//使用字节流读取数据
try {
FileInputStream fin=new FileInputStream("data.txt");
byte input[]=new byte[20];      //创建字节数组,大小不超过文件,规定一次性读到字节大小
fin.read(input);           //读取到字节数组
String inputString=new String(input);   //转换为字符串
System.out.println(inputString);
fin.close();

} catch (FileNotFoundException e) {

e.printStackTrace();
} catch (IOException e) {

e.printStackTrace();
}

//输出数据
try {
FileOutputStream fos=new FileOutputStream("data.txt");
String outstring="wade123";
byte output[]=outstring.getBytes("UTF-8");
fos.write(output);
fos.close();
} catch (FileNotFoundException e) {

e.printStackTrace();
} catch (UnsupportedEncodingException e) {

e.printStackTrace();
} catch (IOException e) {

e.printStackTrace();
}

//拷贝文件
try {
FileInputStream fis=new FileInputStream("data1.txt");   //拷贝对象
FileOutputStream fos=new FileOutputStream("data1 new.txt");  //拷贝到新的文件

byte input[]=new byte[20];
try {
fis.read(input);    //数据读取到数组
while(fis.read(input)!=-1){  //如果还有数据
fos.write(input);   //写出到文件
}
fis.close();
fos.close();
} catch (IOException e) {

e.printStackTrace();
}

} catch (FileNotFoundException e) {
e.printStackTrace();
}

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