原文出处:http://developer.51cto.com/art/201109/292225.htm
--->删除文件
# String fileName="D:"+File.separator+"hello.txt";
# File f=new File(fileName);
# if(f.exists()){
# f.delete();
# }else{
# System.out.println("文件不存在");
# }
f.mkdir();
# File f=new File(fileName);
# File[] str=f.listFiles(); //f.list
if(temp.isFile())
if(temp.isDirectory())
续传文件
# RandomAccessFile demo=new RandomAccessFile(f,"rw");
# demo.writeBytes("asdsad");
字节流 向文件中写入字符串
OutputStream out =new FileOutputStream(f); //追加;new FileOutputStream(f,true);
读文件
FileInputStream input = new FileInputStream(temp);
byte[] b = new byte[1024 * 5];
while ( (len = input.read(b)) != -1)
字符流
#写 Writer out =new FileWriter(f); //追加 new FileWriter(f,true);
# String str="hello";
# out.write(str);
#读 char[] ch=new char[100];
# Reader read=new FileReader(f);
# int count=read.read(ch);
将上面的字节流和字符流的程序的最后一行关闭文件的代码注释掉,然后运行程序看看。你就会发现使用字节流的话,文件中已经存在内容,但是使用字符流的时候,文件中还是没有内容的,这个时候就要刷新缓冲区。
使用字节流好还是字符流好呢? 答案是字节流。首先因为硬盘上的所有文件都是以字节的形式进行传输或者保存的 字符流开发方便
整个IO类中除了字节流和字符流还包括字节和字符转换流。
OutputStreramWriter将输出的字符流转化为字节流
InputStreamReader将输入的字节流转换为字符流
但是不管如何操作,最后都是以字节的形式保存在文件中的。将字节输出流转化为字符输出流
Writer out=new OutputStreamWriter(new FileOutputStream(file)); //将输出的字符流转化为字节流
Reader read=new InputStreamReader(new FileInputStream(file));
# char[] b=new char[100];
# int len=read.read(b);
以内容为输出输入目的地
ByteArrayInputStream 主要将内容写入内容
ByteArrayOutputStream 主要将内容从内存输出
管道流主要可以进行两个线程之间的通信。
PipedOutputStream 管道输出流
PipedInputStream 管道输入流
# BufferedReader buf = new BufferedReader(
# new InputStreamReader(System.in));
Scanner的小例子,从键盘读数据
SequenceInputStream主要用来将2个流合并在一起,比如将两个txt中的内容合并为另外一个txt。下面给出一个实例:
# SequenceInputStream sis = new SequenceInputStream(input1, input2);
# int temp = 0;
# while((temp = sis.read()) != -1){
# output.write(temp);
# }
文件压缩 ZipOutputStream类
# ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(
# zipFile));
# zipOut.putNextEntry(new ZipEntry(file.getName()));
# // 设置注释
# zipOut.setComment("hello");
# int temp = 0;
# while((temp = input.read()) != -1){
# zipOut.write(temp);
# }
对象序列化就是把一个对象变为二进制数据流的一种方法。
分享到:
相关推荐
【JAVA学习笔记(完整版)】是一份由林信良编写的、专为JAVA初学者设计的学习资料。这份详尽的教程以清晰易懂的PDF文档形式呈现,旨在帮助新手快速掌握JAVA编程语言的核心概念和实用技巧。 在JAVA学习过程中,首先...
这个“Java任小龙版基础笔记.zip”压缩包包含了他在教学过程中的精华内容,便于学习者系统地学习Java。其中,“JAVA零基础入门教程笔记-任小龙”很可能是PDF或者文档形式的教程,详细讲解了Java的基础概念和语法。 ...
《良葛格Java学习笔记(完整版)》是一份全面且深入的Java编程教程,适合不同层次的Java学习者,无论你是初学者还是有经验的开发者,都能从中受益。这份笔记详细介绍了Java语言的核心概念、语法特性以及实际开发中的...
"Java学习笔记——良葛格"是一份专为初学者设计的教程资料,由良葛格精心编写,旨在帮助读者掌握JDK5.0版本的Java基础知识。JDK(Java Development Kit)是Java开发的核心工具集,包含了编译器、调试器和运行环境等...
【标题】:“韩顺平java笔记完整版”是著名IT教育家韩顺平关于Java编程的全面学习资料,涵盖了从基础到高级的Java知识体系。 【描述】:这份笔记是韩顺平老师教学经验的结晶,旨在帮助学习者系统地理解和掌握Java...
Java学习笔记主要涉及Java语言的历史背景、语言特点、应用平台和学习建议。以下是对这些内容的详细解析: ### Java语言的历史背景 Java起源于1990年代初的Sun公司(现为Oracle公司的一部分)的“绿色项目”计划,...
"韩顺平java从入门到精通笔记完整版"是一份针对Java初学者精心编纂的学习资料,旨在帮助初学者系统、全面地掌握Java编程技术。 这份笔记首先会介绍Java的基础概念,包括Java的历史、特点、运行环境以及开发工具的...
"韩顺平 Java 从入门到精通视频教程(全 94 讲)学习笔记整理(完整清晰版)" 本资源提供了一个完整的 Java 学习笔记,从基础到高级,涵盖了 Java SE、Java EE 和 Java ME 等方面的知识点。笔记的内容包括 Java ...
Java JDK 6学习笔记——PPT简体版是针对初学者和有经验的开发者们的一份宝贵资源,它深入浅出地介绍了Java编程语言的核心概念和技术。这份资料以PPT的形式呈现,使得学习过程更加直观易懂,同时包含了课程中的源代码...
《良葛格Java JDK 5.0学习笔记》是一本专为初学者设计的Java编程教程,它以PDF格式提供,旨在帮助读者掌握Java JDK 5.0版本的关键特性和编程技巧。Java JDK 5.0是Java发展历程中的一个重要里程碑,引入了许多创新...
《良葛格的Java学习笔记全》是一份深入浅出的Java编程学习资源,适合初学者及有一定基础的开发者。这份笔记以Java 5.0版本为基础,详细讲解了Java语言的核心概念和技术,旨在帮助读者建立起坚实的编程基础,进一步...
总的来说,这份"java的电子版笔记"将全面讲解Java语言的基础和进阶内容,是学习和复习Java知识的好资料。无论是对于想入门Java的新人,还是想要深入理解Java特性的开发者,都是一份不可多得的学习资源。通过学习,你...
【良葛格JAVA学习笔记(最初版)】是一份针对初学者编写的JAVA编程学习资料,以网页形式呈现。这份笔记涵盖了JAVA语言的基础至进阶内容,尽管作者提及只有前六章完整,但这六章已经能够为初学者构建扎实的JAVA编程...
15. **Java SE、Java EE和Java ME**:了解这三种Java平台的不同用途,分别是标准版(SE)用于桌面应用,企业版(EE)用于服务器端应用,微型版(ME)则用于嵌入式设备。 以上只是Java初级学习的部分核心概念,随着...
这份"适合初学者的java学习笔记"正是为了帮助那些刚接触编程或者打算入门Java的人设计的。 笔记内容可能包括以下几个核心部分: 1. **Java基础**:这部分会详细介绍Java的基本语法,如变量、数据类型、运算符、...
《良葛格 Java 学习笔记-JavaGossip全(v1+v2)》是一部集成了作者良葛格多年编程经验的学习资料,旨在帮助初学者和有经验的开发者深入理解和掌握Java这门强大的编程语言。这份笔记包含了JavaGossip的两个版本,v1和...
【小码哥网易云java基础笔记(Excel完整版)】是网易云课堂知名讲师小码哥精心编撰的一份Java编程基础知识的学习资料。这份笔记涵盖了Java语言的核心概念、语法结构以及实际开发中的常见问题,旨在帮助初学者系统地...