import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class CopyFile {
/*将提供的文件“面对巨人片段.rmvb”放到C盘根目录
使用字节流的方式复制该文件,保存为./文件名下盘下“面对巨人片段_复制.rmvb”
*/
public static void main(String[] args) throws IOException {
File inputflie=new File("C:/面对巨人片段.rmvb");
File outputflie=new File("./面对巨人片段_复制.rmvb");
InputStream input=new FileInputStream(inputflie);
//BufferedInputStream和BufferedOutputStream的读取效率高
InputStream buffinput=new BufferedInputStream(input);
//定义数组接收文件字节流
byte[] byte_array=new byte[1000];
buffinput.read(byte_array);//读取
//将文件字节流输出到复制的文件中
OutputStream output =new FileOutputStream(outputflie);
OutputStream buffoutput=new BufferedOutputStream(output);
buffoutput.write(byte_array);//写入
if(outputflie.exists()){
System.out.println("文件已复制成功!");
}
//关闭流
input.close();
buffinput.close();
output.close();
buffoutput.close();
}
}
package com.file.excaption;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
public class FileInput {
/*使用字节流的方式读取当前你正在编辑的.java源码文件
*计算所读取到的字节数,并在控制台打印
* 作者:张宇
*/
public static void main(String[] args) throws IOException,FileNotFoundException{
//先创建文件对象,提供文件路径
File file=new File("src/com/file/excaption/FileInput.java");
//创建文件输入流对象,读取文件,(文件的字节流输入)
InputStream input=new FileInputStream(file);
//加一个if判断文件夹的存在
if(file.exists()){
int count=0;//统计字节数的变量
while((input.read())!=-1){
count++;
}
System.out.println("读取到的字节数有"+count+"个");
}
else{System.out.println("所读取的文件夹不存在!");}
//使用完之后关闭字节流输入,释放掉内存空间
input.close();
}
}
package com.file.excaption;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
/*使用Scanner类
读取当前编辑的.java文件并打印全部信息到控制台(选择哪个方法打印更好?)
异常处理使用try---catch---finally关键字进行捕获,打印相关信息,并保证数据流的关闭。
*/
public class Scann {
public static void main(String[] args) {
File file=new File("src/com/file/excaption/Scann.java");
Scanner sc=null;//标准输入
try {
sc=new Scanner(file);
while(sc.hasNext()){
System.out.println(sc.next());
}
} catch (FileNotFoundException e) {
System.out.println("文件未找到异常");
}
catch(Exception e)
{
System.out.println("其他异常");
}
finally{
sc.close();//关闭流
System.out.println("代码执行块");
}
}
}