转自:https://blog.csdn.net/maxwell_nc/article/details/49151005前几天看了一篇文章(见参考文章),自己动手试了下,发现有些不一样结论,作博客记录下,本文主要研究两个问题:包装流的close方法是否会自动关闭被包装的流?关闭流方法是否有顺序?包装流的close方法是否会自动关闭被包装的流?平时我们使用输入流和输出流一般都会使用buffer包装一下, 直接看下面代码(这个代码运行正常,不会报错) 1import java.io.Buffered...
java中,IO流需要操作系统资源,使用完毕后要释放资源。IO流根据操作的数据的类型的不同,可以分为字节流和字符流,字符流是基于字节流的。字符流的顶层基类是Reader和Writer字节流的顶层基类是InputStream和OutputStream流是用来操作数据的,数据的最常见形式是文件,字符流针对的是文本文件,字节流针对的是二进制文件(如图片文件)。1.FileWriter是Writer的一个子类,创建FileWriter对象后,如果源文件不存在则创建新文件;如果源...
1. 转换流的简化写法:由于我们常见的操作都是使用本地默认编码,所以,不用指定编码。而转换流的名称有点长,所以,Java就提供了其子类供我们使用:FileReader / FileWriterOutputStreamWriter = FileOutputStream + 编码表(GBK)FileWriter = FileOutputStream + 编码表(GBK)InputStreamReader = FileInputStream + 编码表(GBK)FileReader = FileInputStream + 编码表(GBK)2. FileReader / FileWriter两者的构造方法:(1)FileR...
1package 文件操作;2 3import java.io.File;4import java.io.FileReader;5import java.io.IOException;6import java.io.Reader;7 8publicclass TestReader {9publicstaticvoid main(String[] args) throws IOException { 10 File file=new File("D:"+File.separator+"test.txt"); 11/*File*/Reader reader=new FileReader(file);//也可以直接用FileReader类型的变量接收实例化对象,而无需使用向上转型。12if(file.exists(...
ObjectOutputStream、ObjectInputStream的使用 ObjectOutputStream将Java对象的原始数据类型和图形写入OutputStream。可以使用ObjectInputStream读取(重构)对象。 可以通过使用流的文件来实现对象的持久存储如果流是网络套接字流,则可以在另一个主机上或另一个进程中重构对象,只有支持java.io.Serializable接口的对象才能写入流中。方法readObject用于从流中读取对象应使用Java的安全铸造来获得所需的类型。 在Java中,字符...
1-1.IO概述i:input输入(读取)o:output输出(写入)流:数据(字符,字均1个字符=2个字节,1个字节=8个二进制位输入:把硬盘中的数据,读取到内存中使用输出:把内存中的数据写入到硬盘中保存1-2.一切皆为字节一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时候,我们要时刻明确,无论使用什么样的流对象,底层传输的始终为二...
一、JDK5.0新特性1.增强for循环2.语法for(类型 变量:数组名/集合名){}集合想要使用增强for循环这种语法,集合需要使用泛型。如果不使用泛型,那么需要哦使用Object类型来定义集合中的元素 package com.bjpowernode.java_learning;import java.util.*;?publicclass D94_1_EnhanceForCirculation {publicstaticvoid main(String[] args) {int[] a = {1,2,3,4,5,6};//遍历for(int i=0;i<a.length;i++) {System.out.println(a[i]);}...
1、IO流(序列流)1.什么是序列流 序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, 以此类推.2.使用方式整合两个: SequenceInputStream(InputStream, InputStream)FileInputStream fis1 = new FileInputStream("a.txt"); //创建输入流对象,关联a.txt FileInputStream fis2 = new FileInputStream("b.txt"); //创建输入流对象,关联b.txt ...
1. java.io.File类 File类代表系统文件(文件和目录),磁盘上的文件和目录在Java程序中是用File类的实例来表示。 常用的构造方法:File (String pathname);File(File parent, String child) ;File(String parent,String child) 以pathname为路径创建File对象,如果pathname是相对路径,则是相对于Java的 系统属性user.dir中的路径(即当前字节码运行的目录)。 File类的...
回到顶部一、IO流1、定义: IO流指的是Input/Output流,即输入流/输出流。 输入流:将外界信息写入程序,即从外界获取信息,属于读操作。 输出流:将程序数据发送给外界,即向外界传输数据,属于写操作。 流一定要关闭,否则可能会出现一些异常。2、分类: (1)按照功能划分: 输入流:只能读数据,不能写数据。 输出流:只能写数据,不能读数据。 (2)按照处理单元划分: 字节流...
1.流的分类* 1.操作数据单位:字节流、字符流* 2.数据的流向:输入流、输出流* 3.流的角色:节点流、处理流图示: 2.流的体系结构 说明:红框对应的是IO流中的4个抽象基类。蓝框的流需要大家重点关注。3.重点说明的几个流结构 4.输入、输出的标准化过程4.1 输入过程① 创建File类的对象,指明读取的数据的来源。(要求此文件一定要存在)② 创建相应的输入流,将File类的对象作为参数,传入流的构造器中③ 具体的读入过程: ...
1、待续待续 原创作者:DSHORE作者主页:http://www.cnblogs.com/dshore123/原文出自:https://www.cnblogs.com/dshore123/p/9306363.html欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!)原文:https://www.cnblogs.com/dshore123/p/9319067.html
IO流常见操作1.复制文本文件[使用多种方式实现]/* * 复制文本文件 * * 分析: * 复制数据,如果我们知道用记事本打开并能够读懂,就用字符流,否则用字节流。 * 通过该原理,我们知道我们应该采用字符流更方便一些。 * 而字符流有5种方式,所以做这个题目我们有5种方式。推荐掌握第5种。 * 数据源: * c:\\a.txt -- FileReader -- BufferdReader * 目的地: * d:\\b.txt -- FileWriter -- BufferedWriter */public clas...
IO流JAVA流式输入输出原理:可以想象成一根管道怼到文件上,另一端是我们程序,然后流的输入输出都是按照程序本身作为第一人称说明的。比如 input,对于我们程序来说就是有数据输入我们程序,output就是我们程序输出数据到文件等。对象不能搞错了,否则就南辕北辙了。通过不同的角度对流的输入输出功能进行分类:按数据流的方向分为:输入流和输出流按处理数据单位不同分为:字节流和字符流(2个字节)按功能不同分为:节点流和处理...
import java.io.*;class hello{ public static void main(String[] args) { System.out.println(File.separator); System.out.println(File.pathSeparator); }}【运行结果】:\;String fileName="D:"+File.separator+"hello.txt"; File f=new File(fileName); if(f.exists()){ f.delete();File f=new File("D:\\hello.txt");创建新文件f.createNewFile();创建新文件夹 f.mkdir();删除...