网站首页 > java教程 正文
上期我们讲了JAVA文本文件的读写,主要运用FileWriter和FileReader这两个类,
但这两个类主要针对文本文件的按字符方式进行读和写。如果要复制任意类型的文件,仅用这两个类操作可能要出问题。那么怎样才能针对任意类型的文件进行无损读与写呢?答案是用按字节方式进行读与写,也就是运用FileInputStream和FileOutputStream两个类。
要复制一个文件其实非常容易,也就是从一个文件读出,然后写入另一个文件中,直到读完第一个文件为止,文件读完的标志是读出的内容为-1。
//对任意文件进行复制
public class BinCopy {
public static void main(String[] args) {
String fName1 = "d:/003.jpg";
String fName2 = "d:/0031.jpg";
BinCopy b = new BinCopy();
if(b.myCopy(fName1, fName2))
System.out.println("复制成功");
else
System.out.println("复制失败");
}
// 复制函数
boolean myCopy(String fName1, String fName2) {
int x;
try {
FileInputStream fis = new FileInputStream(fName1);
FileOutputStream fos = new FileOutputStream(fName2);
while ((x = fis.read()) != -1)
fos.write(x);
fos.close();
fis.close();
} catch (Exception e) {
return false; // 表示复制失败
}
return true; // 表示复制成功
}
}
如果要将一个文件添加到另一个文件的尾部,则只要在FileOutputStream()构造方法中加入True参数即可,即
FileOutputStream fos = new FileOutputStream(fName2, True);
当然要将两个文件合并,只是针对文本文件才有意义!
若想了解更多的文件操作方法,请关注下期。
猜你喜欢
- 2024-11-16 JAVA实现大文件文件分片上传、断点续传
- 2024-11-16 java大文件分片上传、断点续传、急速秒传
- 2024-11-16 达梦数据库写文件的方式探索(达梦数据库如何)
- 2024-11-16 SpringBoot上如何实现文件上传(springboot文件上传路径配置)
- 2024-11-16 Java Class 类文件格式看这一篇就够了
- 2024-11-16 带你入门Java之每日3分钟Java——编写你的第一个Java程序
- 2024-11-16 Java IO: 文件读写与数据流操作(java io流读取文件)
- 2024-11-16 JAVA基础4:第一次写Java代码(java编程第一步)
- 2024-11-16 Java 创建一个大文件(java创造文件)
- 2024-11-16 用Java代码写一个记事本小程序(用记事本java编写hello word)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)