InputStream / OutPutStream
FileInputStream / FileOutputStream ---字节流 参数是 InputStream 字节流 可以写 System.in
BufferedInputStream / BufferedOutputStream ---高效流
InputStreamReader / OutputStreamWriter ---转换流
FileReader / FileWriter ---字符流
BufferedReader / BufferedWriter ---字符流
===============================================
DataInputStram / DataOutputStream 基本数据类型的写入写出 ----写入写出必须对应-否则会读取到不正确的值
==============================================
内存操作流------写数据存入了内存里---要想读取数据---首先得用一个容器(变量)进行接收----然后读取
ByteArrayInputStream / ByteArrayOutputStream
CharArrayInputStream / CharArrayOutputStream
StringInputStream / StringOutputStream
===============================================
打印流 -------- 只会输出
PrintStream ---字节(可以写任意类型)
PrintWriter ---字符(可以写任意类型)
===============================================
对象流---也叫序列化与反序列化----读取java对象-------------前提-对象必须实现序列化接口---------------如果不想序列化,将成员变量进瞬态修饰 transient
ObjectOutputStream / ObjectInputStream 序列化---反序列化
===============================================
其他流可以封装 System.in Syste.out 在控制台进行输入输出---虽然它等同于 new PrintStream
但是实际上是用 或者 InputStreamWriter/Reader 进行过封装 转换流将字节转换为字符 他们的参数是字节流形式
===============================================
随机访问流
RandomAccessFile ra=new RandomAccessFile(文件源,指定格式); 格式 'rw' 支持写入和写出
===============================================
合并访问流----只有读取
SequenceInputStream se=new SequenceInputStream(流1,流2);
SequenceInputStream se=new SequenceInputStream(Enumeration的元素是流); Enumeration 是 Vector 元素的集合 是它的一种遍历方式
===============================================
properties---------------集合的一种--存储方式有put 还有自己独有的setProperty(键,值);
将元素存进去后---通过 store 将集合信息存进文件
---通过 load 从文件中读取文件
玩游戏限制次数 ---- 提示开通会员
================================================================ JDK中关于Files 的一些新特点======================================================
!!!一:文件的简洁复制
Files.copy(Path p,OutputStream os);//(源文件的路径, 目标文件的路径 OutputStream 格式)
(Paths.get("jujstin.txt",new FileOutputStream("copy.txt")))//(Paths类下的get(URL)方法获取路径)
Files 类下的方法
################ public static long copy(Path source,OutputStream out)
Paths 类下的方法
################ public static path get(URI uri);
!!!二:将集合写入文件
################ Files.write(Path p;集合;编码格式);
(Paths.get("hello.txt",arr,CharSet.forName("GBK/UTF-8")))
|
|