文件拷贝信息
```java
public class FileStream {
public static void main(String[] args) throws Exception {
//读取文件流的路径
File file = new File("aa.png");
FileInputStream is = new FileInputStream(file);
//写入文件流
FileOutputStream os = new FileOutputStream("b.png");
byte[] bytes = new byte[1024];
//记录有效读取的字节个数
long startTime = System.currentTimeMillis();
int len=0;
//循环遍历,读取到定义字节数组中
while ((len=is.read(bytes))!=-1){
os.write(bytes,0,len);
}
is.close();
long endTime = System.currentTimeMillis();
System.out.println(endTime-startTime);
}
}
读取文件
public class FileStream {
public static void main(String[] args) throws Exception {
//读取文件流的路径
FileReader fileReader = new FileReader("03.txt");
int len=0;
while ((len=fileReader.read())!=-1){
System.out.print((char) len);
}
}
}
public class FileStream {
public static void main(String[] args) throws Exception {
//快速读取文件流的路径
FileReader fileReader = new FileReader("03.txt");
char[] chars = new char[1024];
int len=0;
while ((len=fileReader.read(chars))!=-1){
System.out.println(new String(chars,0,len));
}
fileReader.close();
}
}
写入文件flush、close区别,都可以写入文件,但close关闭,流不能使用,所以也不能在写入数据
public class FileStream {
public static void main(String[] args) throws Exception {
//快速读取文件流的路径
FileWriter fileWriter = new FileWriter("00033.txt");
fileWriter.write("你好,数据输入写入中222!");
//只有完成刷新,将流写入,流还能使用,才能完成数据写入
fileWriter.flush();
fileWriter.write("你好,数据输入写入中222!");
//或者关闭写入流,写入数据,流不能使用;
fileWriter.close();
}
}
续写换行
public class FileStream {
public static void main(String[] args) throws Exception {
//快速读取文件流的路径
FileWriter fileWriter = new FileWriter("00033.txt");
for (int i = 0; i < 10; i++) {
fileWriter.write("hello word");
fileWriter.write("\r\n");
}
//只有完成刷新,将流写入,流还能使用,才能完成数据写入
fileWriter.flush();
//或者关闭写入流,写入数据,流不能使用;
fileWriter.close();
}
}
爬出异常处理
public class FileStream {
public static void main(String[] args) {
FileWriter fileWriter = null;
//快速读取文件流的路径
try {
//最加文件写入
File file = new File("G:\\ancen\\test\\untitled\\00033.txt");
if (!file.exists()){
throw new NullPointerException("文件不存在");
}
fileWriter=new FileWriter(file);
for (int i = 0; i < 10; i++) {
fileWriter.write("hello word"+i+"\r\n");
}
} catch (IOException e) {
e.printStackTrace();
}finally {
//或者关闭写入流,写入数据,流不能使用;
try {
if (fileWriter!=null){
fileWriter.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}