文件各种流和复制
1.字节流
通过读取字节的方式进行文件的输入和输出,用到的类为InputStream和OutputStream,
相应的操作就是调用相应的方法,下面为示例代码,都比较简单
1)输入流应用代码
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class InputDemo {
/**
* 主函数
* @throws IOException
*/
public static void main(String[] args) throws IOException {
InputDemo ipd=new InputDemo();
//此路径为相对路径
String path="src/文件输入/InputDemo.java";
ipd.readFile(path);
}
private void readFile(String path) throws IOException {
//创建输入流对象
InputStream ins=new FileInputStream(path);
//根据输入流创建缓冲流
BufferedInputStream bis=new BufferedInputStream(ins);
//根据流中的字节长度创建一个byte数组
byte array[]=new byte[ins.available()];
//将流中的数据读到数组中(不用缓冲)
ins.read(array);
//运用缓冲流输入
//bis.read(array);
ins.close();
bis.close();
//将数组转换成String类型并输出
System.out.println(new String(array));
}
}
2)输出流应用代码
输出流的代码是关于文件复制的应用
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
public class OutputDemo {
/**
* 主函数
* @throws IOException
*/
public static void main(String[] args) throws IOException {
OutputDemo opd=new OutputDemo();
String path1="C:/Users/Deller/Desktop/人月神话.txt";
String path2="src/文件输出/OutputDemo.java.txt";
opd.copyFile(path1,path2);
}
/**
* 复制文件方法
* @param path1 要复制的文件的路径
* @param path2 文件副本的路径
* @throws IOException文件异常
*/
public void copyFile(String path1,String path2) throws IOException{
InputStream ins=new FileInputStream(path1);
FileOutputStream ops=new FileOutputStream(path2);
//创建缓冲流
BufferedInputStream bis=new BufferedInputStream(ins);
BufferedOutputStream bos=new BufferedOutputStream(ops);
int i=0;
//不运用缓冲读取文件并输出(会很慢的),不信你可以找一个较大的文件
试试
//当ins.read()=-1时,说明文件读取完毕
//while((i=ins.read())!=-1){
// ops.write(i);
//}
//运用缓冲读取文件并输出
while((i=bis.read())!=-1){
bos.write(i);
}
System.out.println("文件复制完成!!!");
bos.flush();
ins.close();
ops.close();
bis.close();
bos.close();
}
}
2.缓冲流
其实上面代码已经运用到了缓冲流,它的创建要根据输出和输入流进行创建。
还没写完。。。。
分享到:
相关推荐
Visual C++源代码 55 如何使用缓冲流复制文件Visual C++源代码 55 如何使用缓冲流复制文件Visual C++源代码 55 如何使用缓冲流复制文件Visual C++源代码 55 如何使用缓冲流复制文件Visual C++源代码 55 如何使用缓冲...
IO流文件的复制
使用缓冲流快速复制文件
java 使用IO流实现文件的复制 java 使用IO流实现文件的复制
1.编写应用程序,使用文件输入输出流实现文件的复制,被拷贝的源文件和复制的目标文件由命令行参数给出。 2.编写应用程序,创建一个文件输出流,向文件中分别写入以下类型数据:int、double和字符串,然后创建一个...
完整的文件io 流操作,有四个函数, Writer read inputStream outputStream自己总结的东东,让大家用用,不图得分,
标准io流复制文件
IO流的文件复制,和整个文件夹的复制,并检查是否复制成功,如果复制成功返回true,否则返回false
java的IO流实现文件复制20190726.zip,使用的是字节流。
Java实现文件复制,File文件读取,写入,IO流的读取写入
可以返回用户输入的信息,不足之处在于不支持中文输入,有待进一步改进。 该方法经过测试,支持中文处理,并且可以复制多种类型,比如txt,xml,jpg,doc等多种格式
VC .NET 采用缓冲法复制文件的示例源代码,演示使用二进制缓冲流复制文件,要创建二进制流,创建二进制缓冲流等。其中二进制流复制文件部分的实现过程,请参见以下代码: //创建二进制流 MyInputStream=File::...
delphi读取文件流delphi读取文件流 tfilestream利用字节数组复制文件
IO流的一些基本操作,包括对文件的读写,文件的复制,序列化,BYTE数组转换
虽然是复制文件,不过通过本源码你可以学习很多相关的Java基础技巧,比如Java对文件的事件处理、取得目录内容的事件处理、如何弹出文件选择器、如何得到选择文件的绝对路径、如何将将读取的字节数组写入目标文件输出...
Java文件夹复制(远程复制(网络传输),用于远程备份文件)(支持文件夹,嵌套子文件夹) import java.io.*; import java.util.*; public class FileSelection { private File rootDirectory;//根目录 private ...
字节流、文件流、文件操作、字节流文件流相互转换,流的包装
java中实现复制文件和文件夹 public static void copyFile(File sourceFile,File targetFile) throws IOException{ // 新建文件输入流并对它进行缓冲 FileInputStream input = new FileInputStream(sourceFile)...
Java IO文件操作类与复制文件实例,有关文本编辑、FileWriter文件写入、FileReade文件读娶DataStream文件数据流、BufferedReader文件暂存器、FileViewer文件浏览器、复制文件Copy等方面的操作要领,仅供学习参考。
c#的拷贝文件源代码,指定每次拷贝大小。