当前位置:文档之家› java IO流编程

java IO流编程

I/O流编程
●流的概念
⏹数据从一个对象到另一个对象过程的
抽象称为(数据)流(Stream)。

⏹I/O流指输入流(InputStream)与输出
流(OutputStream)
⏹读入流(Reader)/写入流(Writer)
●File类
⏹此类只操作文件对象,而不操作文件内
容。

⏹Java中把目录当作文件来处理。

示例1: File类简单应用
⏹File类的构造:
◆File(String path,String name) 如:
◆File(String pathname)
如:
◆File(File path,String name) 如:
◆File(URI vpathname)
如:
⏹File类常用方法:
◆mkdirs()/mkdir()
◆createNewFile()/createTempFil
e()
◆isFile()/isDirectory()/isAbso
lute/canRead()/canWrite()
◆getName()/getPath()/getParent
()/getAbsolutePath()
◆setReadable()/setWritable()/s
etReadOnly()
示例2:File常用方法
示例3:列某一目录中的所有的.exe文件
●流的分类
⏹字节流
◆以字节为单位对文件内容进行读写
操作。

◆InputStream/OutputStream
●输入字节流与输出字节流的根类
●JavaIO中的所有输入流与输出流
类都是它们子类。

◆FileInputStream/FileOutputStr
eam
●文件的输入流与输出流,只读写文
件的内容。

◆常用的方法
●read()
●write()
●available()
●flush()
●close()
示例4:将指定的字符串以字节流的形式写到指定的文件中去
示例5: 将指定的文件中的内容以字节流的形式读出并输出到控件台中
示例6:以字节流的形式封装带有Copy功能的文件操作类(MyFile)
⏹字符流
◆Reader/Writer
●输入字符流与输出字符流的根类
◆FileReader/FileWriter
●文件输入字符流与文件输出字符流
的类
◆BufferedReader/BufferedWriter
●在缓冲区中高效读写字符流
◆常用方法
●read()/readLine()
●newLine()/write()/append()
●flush()
●close()
示例7:将指定的字符串以字符流的形式写到指定的文件中去
示例8: 将指定的文件中的内容以字符流的形式读出并输出到控件台中
示例9:以字符流的形式封装带有Copy功能的文件操作类(MyFile)
⏹二进制流(字节流)
◆DataInput/DataOutput接口
◆FilterInputStream/FilterOutpu
tStream类
◆DataInputStream/DataOutputStr
eam
◆常用的方法
●read()/readChar()/readBoolean
()/readUTF()/readDouble()/rea
dFloat()/readFully()
●write()/writeChar()/writeBool
ean()/writeUTF()/writeDouble(
)/writeFloat()/writeInt()/wri
teLong()
●available()
●size()
●flush()
●close()
示例10:读/写二进制文件(user.dat)
示例11:复制二进制文件(.jpg)
⏹打印输出流(字符流)
⏹PrintStream
⏹PrintWriter
示例12:
⏹随机文件访问(字符流)
◆RandomAccessFile类
●seek()搜索位置
●length()最大的长度
●read()
●write()
●close()
示例13:
对象序列化
◆将数据排成系列进入流中。

◆将序列化的数据恢复为数据集合的
过程称为序列化的解体(读)。

◆可序列化的类都实现了
Serializable接口
◆ObjectInput/ObjectOutput接口
◆ObjectInputStream/ObjectOutpu
tStream
示例14:读写序列化的流。

相关主题