随笔分类 -  JAVA笔记

摘要:本文部分内容转自:https://blog.csdn.net/nightcurtis/article/details/51384126 1.RandomAccessFile特点 RandomAccessFile是java Io体系中功能最丰富的文件内容访问类。即可以读取文件内容,也可以向文件中写入内 阅读全文
posted @ 2019-11-26 14:14 Scorpicat 阅读(617) 评论(0) 推荐(0)
摘要:PrintStream流 PrintStream作为一个包装流,它可以包装字节流,甚至可以使用指定的文件创建一个打印流。它的构造函数很丰富,建议打开API看一下。 它常用的方法是print方法与println方法,它们与构造方法配合可以不用flush而自动刷新。 构造方法的参数boolean aut 阅读全文
posted @ 2019-11-26 10:33 Scorpicat 阅读(180) 评论(0) 推荐(0)
摘要:Object流、序列化与反序列化 Object流是将 可序列化的对象 进行序列化与反序列化的流。 可序列化的对象:使用关键字Serializable修饰,表示这个对象可以进行序列化与反序列化。 序列化:序列化即将对象转换为字节数组进行传输或出错。 反序列化:将含对象的字节数组转为对象。 就如我们的D 阅读全文
posted @ 2019-11-25 15:50 Scorpicat 阅读(421) 评论(0) 推荐(0)
摘要:数据流的引入 Data流的父类是Filter抽象基类,也就是说Data流是装饰流。 数据流可以将数据的类型也一起传输。 数据流的读取写入顺序(数据类型的读写顺序)需要一致。 未完成代码 /** *Data流、数据流 *1.为了演示,我们先将数据写入数据流,再从中读取出来 *2.读取的顺序与写出保持一 阅读全文
posted @ 2019-11-25 09:43 Scorpicat 阅读(185) 评论(0) 推荐(0)
摘要:什么是转换流 首先,这里的转换流指的是InputstreamReader与OutputStreamWriter。 正如它们的名字,它的作用是将字节流转换为字符流。 为什么要转换为字符流呢?因为对于获取到的字节流,如果是纯文本数据,还是建议转换为字符流来处理比较方便且高效。 构造器 特别需要提到的一点 阅读全文
posted @ 2019-11-24 21:56 Scorpicat 阅读(292) 评论(0) 推荐(0)
摘要:Buffered字符包装流 与Buffered字节装饰流一样,只不过是对字符流进行包装。 需要注意的地方 Buffered字符流在Reader与Writer上有两个新的方法:String readLine()与 void newLine() 所以Buffered字符流不能够使用多态,也就是:Writ 阅读全文
posted @ 2019-11-24 20:31 Scorpicat 阅读(229) 评论(0) 推荐(0)
摘要:我们按功能可以将IO流分为节点流与处理流 节点流:可以直接从数据源或目的地读写数据 处理流(装饰流):不直接连接到数据源或目的地,是其他流(必须包含节点流)进行封装。目的主要是简化操作和提高性能。 Buffered流的引入 当我们使用节点流来传输数据时,节点流单次传输的数据太少,会频繁读写硬盘,这使 阅读全文
posted @ 2019-11-24 10:38 Scorpicat 阅读(254) 评论(0) 推荐(0)
摘要:声明:本文部分图片及内容引用自:https://www.cnblogs.com/qiumingcheng/p/5219631.html java装饰器设计模式 举一个形象的例子,人可以说话,而扩音器可以对人说的话进行扩音。所以扩音器就是一个装饰器。 java中就有一套在这样的场景专门使用的设计模式— 阅读全文
posted @ 2019-11-23 22:09 Scorpicat 阅读(286) 评论(0) 推荐(0)
摘要:前言 本文将上一节做的代码,对copy方法与关闭流方法进行封装,并使用try...with...resource关闭流。 copy方法封装 我们将copy方法封装,使得只需传入两个流,就能将输入流的源文件copy到输出流的目的文件。 值得注意的是,由于ByteArrayOutputStream不能直 阅读全文
posted @ 2019-11-23 16:32 Scorpicat 阅读(542) 评论(0) 推荐(0)
摘要:字节数组流 ByteArray流是节点流。 前面讲到的文件字节流,文件字符流,他们的源都是来自于pc硬盘。 本节要讲的字节数组流的源是来自于内存或网络。 它更合适用来处理来自网络的字节流。 由于源并不是来自于硬盘,所以流无需关闭。(写了关闭也不影响) 由于内存是有限的,为了避免内存占用过高,要对流进 阅读全文
posted @ 2019-11-23 11:15 Scorpicat 阅读(307) 评论(0) 推荐(0)
摘要:对比文件字节流的优势 对于文本文件的数据传输,使用文件字符流,就不用考虑编码转码的问题。 对比文件字节流,在方法上的不同有哪些 文件字符流有append方法: Writer append(char c) Writer append(charSequence csq) 注:charSequence是字 阅读全文
posted @ 2019-11-22 23:47 Scorpicat 阅读(143) 评论(0) 推荐(0)
摘要:两个类的简述 专门用来对文件进行读写的类。 父类是InputStream、OutputStream 文件读入细节 FileOutputStream流的构造方法:new FileOutputStream(File f,boolean append),第二个参数默认值为false,表示数据不追加到文件, 阅读全文
posted @ 2019-11-22 15:43 Scorpicat 阅读(277) 评论(0) 推荐(0)
摘要:数在java中的表示 在java中,除了boolean型的数据类型外,其他的7中基本数据类型都是有符号的。 也就是说,他们的二进制形式的第一位是符号位。 负数在二进制中的表示方法 在二进制中,第一位为1的表示负数,为0表示整数。 负数在二进制为补码; 错误表示示范 -3 : 1000 0011 错误 阅读全文
posted @ 2019-11-22 15:22 Scorpicat 阅读(626) 评论(0) 推荐(0)
摘要:流程 选择源 选择合适的流 操作 关闭流:先打开的后关闭 演示 import java.io.File; import java.io.InputStream; import java.io.FileInputStream; import java.io.IOException; public cl 阅读全文
posted @ 2019-11-22 12:21 Scorpicat 阅读(175) 评论(0) 推荐(0)
摘要:关于IO流以前写的PPT式笔记请跳转:https://blog.csdn.net/SCORPICAT/article/details/87975094#262___1451 IO流的主要结构 记忆方法 先记住四大抽象类 Write Reader InputStream OutputStream 四类 阅读全文
posted @ 2019-11-21 22:24 Scorpicat 阅读(277) 评论(0) 推荐(0)
摘要:字符集 ASCLL码不包含中文 GBK是中文专用 Unicode国际通用 UTF-8 可变长编码 ISO 8859-1 编码解码 编码:字符转二进制,便于传输 示例: String str = "我是一个好人"; byte[] dates = str.getBytes();//括号汇总可选填字符集名 阅读全文
posted @ 2019-11-21 22:07 Scorpicat 阅读(202) 评论(0) 推荐(0)
摘要:思路 需要遍历的文件夹 File 使用listFile列出下级文件及文件夹 判断得到的list是否为空,为空则输出当前文件夹名称 如果不为空,逐个判断是文件还是文件夹 如果是文件,输出文件名 如果是文件夹, 回到2步骤 从第2到第6封装成方法,使用递归的思想遍历。 代码 import java.io 阅读全文
posted @ 2019-11-21 16:30 Scorpicat 阅读(241) 评论(0) 推荐(0)
摘要:1 流的概念理解(重要) 理解流的概念非常重要。 流,就是程序到数据源或目的地的一个通道。 我们把这个通道实例化得到一个具体的流,相当于一个数据传输工具,它可以在程序与资源之间进行数据交换。 换言之,流就是一个通道,一个工具,在程序与数据源或目的地之间起到桥梁作用。 工具怎么体现呢?体现在流的方法上 阅读全文
posted @ 2019-11-21 11:28 Scorpicat 阅读(215) 评论(0) 推荐(0)