欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    09 第9章 输入输出流.ppt

    • 资源ID:67211447       资源大小:442.50KB        全文页数:24页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    09 第9章 输入输出流.ppt

    Java 语言程序设计语言程序设计v天津理工大学天津理工大学 计算机与通信工程学院计算机与通信工程学院v主讲教师:孙世温主讲教师:孙世温第第9章章 输入输入/输出流输出流2022/12/202第第9章章 输入输入/输出流输出流主要内容主要内容v流流的基本概念的基本概念vjava.io包中提供的流类包中提供的流类v几种典型的几种典型的I/O操作操作n标准标准 I/OnFile I/On字节数组字节数组 I/On字符串字符串 I/On数据流数据流 I/On对象对象 I/OReaderWriterInputStreamOutputStream本章学习要求:本章学习要求:1)理解基本原理)理解基本原理2)“掌握掌握”典型应用典型应用2022/12/203第第9章章 输入输入/输出流输出流流(流(Stream)v流的基础知识流的基础知识n一个流是读写的一个流是读写的源源或或目的目的地地l例如,一个需要键盘输入的程序可以用流来做到例如,一个需要键盘输入的程序可以用流来做到n两种基本的流(两种基本的流(输入流和输出流)输入流和输出流)l可以从输入流读,但不能对它写可以从输入流读,但不能对它写l可以向输出流写,但不能对它读可以向输出流写,但不能对它读n流的源和目的地可以是流的源和目的地可以是l键盘、显示器窗口、内存、磁盘文件键盘、显示器窗口、内存、磁盘文件等等2022/12/204第第9章章 输入输入/输出流输出流vjava.io包中提供大量的流类以完成包中提供大量的流类以完成IO操作操作n4个个abstract类类n其子类具体完成其子类具体完成I/O操作操作InputStream(字节输入流)(字节输入流)OutputStream(字节输出流)(字节输出流)Reader(字符输入流)(字符输入流)Writer(字符输出流)(字符输出流)2022/12/205第第9章章 输入输入/输出流输出流abstract类:类:InputStream、OutputStreamvInputStream类方法类方法n三个基本的三个基本的read方法方法lint read()throws IOException;lint read(byte)throws IOException;lint read(byte,int start,int len)throws IOException;n其他方法其他方法lvoid close()throws IOException;lint available()lvoid skip(long n)vOutputStream类方法类方法n三个基本的三个基本的write方法方法lvoid write(int)throws IOException;lvoid write(byte)throws IOException;lvoid write(byte,int start,int len)throws IOException;n其他方法其他方法lvoid close()throws IOException;lvoid flush()throws IOException;2022/12/206第第9章章 输入输入/输出流输出流abstract类:类:Reader、WritervReader类的方法类的方法n三个基本的三个基本的read方法方法lint read()throws IOException;lint read(char)throws IOException;lint read(char,int start,int len)throws IOException;n其他方法其他方法lvoid close()throws IOException;lint available()lvoid skip(long n)vWriter类的方法类的方法n三个基本的三个基本的write方法方法lvoid write(int)throws IOException;lvoid write(char)throws IOException;lvoid write(char,int start,int len)throws IOException;n其他方法其他方法lvoid close()throws IOException;lvoid flush()throws IOException;2022/12/207第第9章章 输入输入/输出流输出流InputStream及其子类及其子类vInputStreamnByteArrayInputStreamnFileInputStreamnFilterInputStreamlBufferedInputStream lDataInputStreamlLineNumberInputStream lPushbackInputStreamnObjectInputStream nPipedInputStreamnSequenceInputStream nStringBufferInputStream 分别将字节数组(ByteArray)、文件(File)、对象(Object)等作为输入流的“源”2022/12/208第第9章章 输入输入/输出流输出流OutputStream及其子类及其子类vOutputStreamnByteArrayOutputStreamnFileOutputStreamnFilterOutputStreamlBufferedOutputStream lDataOutputStreamlPrintStreamnObjectOutputStream nPipedOutputStream分别将字节数组(ByteArray)、文件(File)、对象(Object)等作为输出流的“目的地”2022/12/209第第9章章 输入输入/输出流输出流Reader及其子类及其子类vReadernBufferedReaderlLineNumberReadernCharArrayReadernFilterReaderlPushbackReadernInputStreamReader lFileReadernPipedReader nStringReader分别将字符数组(CharArray)、文件(File)等作为输入流的“源”2022/12/2010第第9章章 输入输入/输出流输出流Writer及其子类及其子类vWriternBufferedWriternCharArrayWriter nFilterWriternOutputStreamWriterlFileWriternPipedWriternPrintWriternStringWriter分别将字符数组(CharArray)、文件(File)等作为输出流的“目的地”2022/12/2011第第9章章 输入输入/输出流输出流典型典型I/O操作之一:标准操作之一:标准I/OvSystem.in和和System.outv从键盘接收输入数据从键盘接收输入数据njava.util.ScannerScanner sc=new Scanner(System.in);int a=sc.nextInt();n另一种方式:另一种方式:BufferedRead br=new BufferedReader(new InputStreamReader(System.in);v输出数据到显示器输出数据到显示器System.out.println()System.in为InputStream的对象 表示键盘System.out为PrintStream的对象 表示显示器2022/12/2012第第9章章 输入输入/输出流输出流v命令行参数和系统环境变量命令行参数和系统环境变量nJava命令命令java.exe可以携带参数,叫命令行参数可以携带参数,叫命令行参数java nmain方法中的参数方法中的参数args可以用来接受命令行参可以用来接受命令行参数数public void static main(String args)largs0 第一个参数第一个参数largs1 第二个参数,第二个参数,2022/12/2013第第9章章 输入输入/输出流输出流典型典型I/O操作之二:文件操作之二:文件I/Ov“文件文件”的基本概念的基本概念vFile类类n创建创建File对象对象lFile(String filename)lFile(String directoryPath,String filename)lFile(File f,String filename)nFile类的方法类的方法l获取文件信息获取文件信息l目录相关目录相关l创建与删除文件创建与删除文件2022/12/2014第第9章章 输入输入/输出流输出流v用于获取文件信息的用于获取文件信息的File类的方法:类的方法:npublic String getName()获取文件的名字。获取文件的名字。npublic boolean canRead()判断文件是否是可读的。判断文件是否是可读的。npublic boolean canWrite()判断文件是否可被写入。判断文件是否可被写入。npublic boolean exits()判断文件是否存在。判断文件是否存在。npublic long length()获取文件的长度(单位是字节)。获取文件的长度(单位是字节)。npublic String getAbsolutePath()获取文件的绝对路径。获取文件的绝对路径。npublic String getParent()获取文件的父目录。获取文件的父目录。npublic boolean isFile()判断文件是否是一个正常文件判断文件是否是一个正常文件public boolean isDirectroy()判断文件是否是一个目录。判断文件是否是一个目录。npublic boolean isHidden()判断文件是否是隐藏文件。判断文件是否是隐藏文件。npublic long lastModified()获取文件最后修改的时间。获取文件最后修改的时间。2022/12/2015第第9章章 输入输入/输出流输出流v用于创建用于创建/删除文件的删除文件的File类的方法:类的方法:npublic boolean createNewFile()npublic boolean delete()例:例:File f=new File(c:myletter,letter.txt);f.createNewFile()f.delete();2022/12/2016第第9章章 输入输入/输出流输出流v目录相关的目录相关的File类的方法:类的方法:1 1)创建目录)创建目录 public boolean mkdir():创建一个目录:创建一个目录 2 2)列出目录中的文件)列出目录中的文件n public String list()用字符串形式返回目录下的全部文件,用字符串形式返回目录下的全部文件,n public File listFiles()用用File对象形式返回目录下的全部文件。对象形式返回目录下的全部文件。n public String list(FilenameFilter obj)用字符串形式返回目录下用字符串形式返回目录下的指定类型的所有文件。的指定类型的所有文件。n public File listFiles(FilenameFilter obj)用用File对象返回目录下对象返回目录下的指定类型所有文件。的指定类型所有文件。【例例9-1】2022/12/2017第第9章章 输入输入/输出流输出流v运行本机上的可执行文件运行本机上的可执行文件n 首先使用首先使用Runtime 类声明一个对象,如:类声明一个对象,如:Runtime ec;n 然后使用静态然后使用静态getRuntime()方法创建这个对象:方法创建这个对象:ec=Runtime.getRuntime();n ec可以调用可以调用exec(String command)方法打开方法打开本地机的可执行文件或执行一个操作。本地机的可执行文件或执行一个操作。【例例9-2】2022/12/2018第第9章章 输入输入/输出流输出流vFile IO 之之 顺序读写文件顺序读写文件n文件字节流文件字节流lFileInputStreamlFileOutputStreamn文件字符流文件字符流lFileReaderlFileWritern缓冲流(读取缓冲流(读取/写入文本行)写入文本行)lBufferedReaderlBufferedWriter【例例9-3】【例例9-4】【例例9-5】BufferedReader必须与Reader流对象连接 BufferedWriter必须与Writer流对象连接2022/12/2019第第9章章 输入输入/输出流输出流vFile IO 之之 随机读写文件随机读写文件 RandomAccessFile类类n即能读,也能写即能读,也能写n创建创建RandomAccessFile对象对象lRandomAccessFile(String name,String mode)lRandomAccessFile(File file,String mode)参数参数mode取取r(只读)或(只读)或rw(可读写),决定创建的(可读写),决定创建的流对文件的访问权利。流对文件的访问权利。【例例9-11】【例例9-12】2022/12/2020第第9章章 输入输入/输出流输出流典型典型I/O操作之三:字节数组操作之三:字节数组I/O、字符串、字符串I/Ov将将内存中的字节数组内存中的字节数组作为流的源和目标作为流的源和目标nByteArrayInputStreamnByteArrayOutputStreamv将将内存中的字符串内存中的字符串作为流的源和目标作为流的源和目标nStringReadernStringWriter【例例9-7】2022/12/2021第第9章章 输入输入/输出流输出流典型典型I/O操作之四:数据流操作之四:数据流I/OvDataInputStream和和DataOutputStreamn允许按照与机器无关的风格读取或写入数据允许按照与机器无关的风格读取或写入数据【例例9-8】2022/12/2022第第9章章 输入输入/输出流输出流典型典型I/O操作之五:对象操作之五:对象I/OvObjectInputStream和和ObjectOutputputStreamn构造方法:构造方法:lObjectInputStream(InputStream in)lObjectOutputStream(OutputStream out)nObjectOutputStream类的类的writeObject(Object obj)将将一个对象写入到输出流的目的地一个对象写入到输出流的目的地nObjectInputStream类的类的readObject(Object obj)从输入从输入流的源中读取一个对象流的源中读取一个对象n要求写入或读取的对象必须是要求写入或读取的对象必须是序列化序列化的,即实现的,即实现Serializable接口接口【例例9-9】2022/12/2023第第9章章 输入输入/输出流输出流本章小结本章小结v理解理解“流流”的概念的概念v掌握掌握java.io包中的流类及继承结构包中的流类及继承结构v掌握几种典型掌握几种典型I/O操作:操作:n标准标准 I/OnFile I/On对象对象 I/On2022/12/2024第第9章章 输入输入/输出流输出流

    注意事项

    本文(09 第9章 输入输出流.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开