第十五章习题※答案_第1页
第十五章习题※答案_第2页
第十五章习题※答案_第3页
第十五章习题※答案_第4页
第十五章习题※答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、填空题1.所有字节流类的基类是_、_(InputStream OutputStream)2.所有字符流类的基类是_、_(Reader Writer)3.InputStream类以_为信息的基本单位(字节)4.Reader类以_为信息的基本单位(字符)5._类用以处理文件和路径问题(File)6.Java中标准输入输出流对象是:_、_、_(System.in System.out System.err)7.System.in的类型是_(InputStream)8.System.out的类型是_(PrinterStream)二、选择题1.以下选项中属于字节流的是(A)A)FileInputSream B)FileWriter C)FileReader D)PrintWriter2.以下选项中不属于File类能够实现的功能的是(D)A)建立文件 B)建立目录 C)获取文件属性 D)读取文件内容3.以下选项中哪个类是所有输入字节流的基类(A)A)InputStream B)OutputStream C)Reader D)Writer4.以下选项中哪个类是所有输出字符流的基类(D)A)InputStream B)OutputStream C)Reader D)Writer5.下列选项中能独立完成外部文件数据读取操作的流类是(B)A)InputStream B)FileInputStream C)FilterInputStream D)DataInputStream6.下列选项中能独立完成外部文件数据读取操作的流类是(B)A)Reader B)FileReader C)BufferedReader D)ReaderInputStream7.在建立FileInputStream流对象时可能会产生下列哪种类型的异常(B)A)ClassNotFoundException B)FileNotFoundException C)RuntimeException D)AWTException8.在使用FileInputStream流对象的read方法读取数据时可能会产生下列哪种类型的异常(D)A)ClassNotFoundException B)FileNotFoundExceptionC)RuntimeException D)IOException三、程序设计题1编写应用程序,使用System.in.read()方法读取用户从键盘输入的字节数据,回车后,把从键盘输入的数据存放到数组buffer中,并将用户输入的数据通过System.out.print()显示在屏幕上。import java.io.*;public class Class1public static void main(String args)byte buffer=new byte128; int n;try n=System.in.read(buffer); /把键盘输入的数据读到数组buffer中,返回实际读取的字节数for(int i=0;in;i+)System.out.print(char)bufferi);catch(IOException e) System.out.print(e); 2编写应用程序,使用System.in.read()方法读取用户从键盘输入的字节数据,回车后,把从键盘输入的数据存放到数组buffer中,并将用户输入的数据保存为指定路径下的文件。import java.io.*;public class Class1public static void main(String args)byte buffer=new byte128; int n;try n=System.in.read(buffer); FileOutputStream out=new FileOutputStream(./abc.txt,true);/追加 /FileOutputStream out=new FileOutputStream(./abc.txt,false); out.write(buffer,0,n); out.close( );catch(IOException e) System.out.print(e); 3. 编写java应用程序,使用FileInputStream类对象读取程序本身(或其他目录下的文件)并显示在屏幕上。import java.io.*; public class Class1public static void main (String args) try/FileInputStream fis=new FileInputStream(c:windowsConfig.txt); FileInputStream fis=new FileInputStream(Class1.java);int n;while(n=fis.read()!=-1)System.out.print(char)n);fis.close();catch(IOException e)System.out.println(e.toString();4. 编写java应用程序,使用FileInputStream类对象读取程序本身(或其他目录下的文件)到字节数组中,并显示在屏幕上(或存储为其他文件)。import java.io.*;/读取程序本身,显示在屏幕上public class Class1public static void main (String args)tryFileInputStream fis=new FileInputStream(Class1.java);byte b=new bytefis.available();System.out.println(文件流的大小:+fis.available();int n=fis.read(b);myprint(b);System.out.print(实际读取的字节数:+n);fis.close();catch(IOException e)System.out.println(e.toString();static void myprint(byte x)for(int i=0;ix.length;i+)System.out.print(char)xi);5编写应用程序,程序中创建一个文件输入流对象fis,读取当前目录下文本文件test1.txt,该文件内容有如下两行文本:Java program is easy.I like it.从文件输入流fis中读取5个字节数据存放到数组b中,字节数据存放的位置从数组下标3开始。将读取的数据在屏幕输出。import java.io.*;public class Class1 public static void main( String args ) throws IOException File file = new File(./test1.txt);FileInputStream fis = new FileInputStream( file);int n=0; byte b=new byte8;n=fis.read(b,3,5);fis.close();for(int i=3;ib.length;i+)/字节数组中从下标3开始的数据转化为字符后输出。System.out.print(char)bi+t);6编写应用程序,程序中创建一个文件输出流对象out向当前目录下已有的文件abc.txt(内容为:ABCDEFG)写入字符串abcdefg中的所有字符和大写字母A。import java.io.*;public class Class1public static void main (String x) throws IOException String s=abcdefg;byte b;FileOutputStream out=new FileOutputStream(./abc.txt,true);/添加字节数据b=s.getBytes();out.write(b,0,b.length);out.write(65);/写入字节数据65-Aout.close();7使用RandomAccessFile类及其方法。import java.io.*;public class Class1public static void main( String args )try/以随机方式写入数据RandomAccessFile out = new RandomAccessFile( 1.dat , rw );out.writeInt(12345);/4out.writeChar(A);/2out.writeBoolean(true);/1out.writeUTF(程序设计);/8 /显示字符A 和”程序设计“out.seek(4);System.out.println(out.readChar();out.skipBytes(1);/out.seek(7);System.out.println(out.readUTF();System.out.println(out.getFilePointer();System.out.println(out.length();out.close();System.in.read();catch( IOException e )System.out.println( e );System.exit( -2 );8编写应用程序,使用RandomAccessFile类及其方法,把程序本身分两次显示在屏幕上。第一次直接显示,第二次给每一行添加的行号显示。import java.io.*;public class Testpublic static void main( String args ) throws IOExceptionRandomAccessFile randomfile = new RandomAccessFile(Test.java , r );String s;while(s=randomfile.readLine()!=null)System.out.println(s);long filePointer=0,fileLength=randomfile.length();randomfile.seek(0); /文件指针已到文件尾,将文件指针重设到文件开始位置int i=1;while(filePointerfileLength)s=randomfile.readLine();System.out.println(i+)+ +s);filePointer=randomfile.getFilePointer();randomfile.close();9在程序所在的目录下有子目录b,目录b下有文本文件testb.txt。编写应用程序,创建文件对象:File file=new File(b/testb.txt);通过文件对象file得到它的文件名、相对路径、绝对路径、父目录名。import java.io.*;public class Class1public static void main( String args )File file=new File(b/testb.txt);System.out.println(文件名: + file.getName( ) );System.out.println(相对路径: + file.getPath( ) );System.out.println(绝对路径: + file.getAbsolutePath( ) );System.out.println(父目录名: + file.getParent( ) );10请编写一个名为Class1.java的Application,其功能为:测验文件Class1.java是否存在并输出其长度。import java.io.*;public class Class1public static void main (String args)File f1=new File(./Class1.java);System.out.println(is exist:+f1.exists( );System.out.println(file length:+f1.length( );11编写应用程序:创建目录c:temp,并创建一个文件2.txt,向该文件中写入字符串The first snow came.共5次。import java.io.*; public class Class1public static void main(String args) throws IOExceptionFile file1=new File(c:temp);file1.mkdir();File file2=new File(file1,2.txt);FileOutputStream out1=new FileOutputStream(file2);String s=The first snow came.;byte b=s.getBytes();for(int i=0;i5;i+)out1.write(b,0,b.length);12过滤文件并显示。import java.io.*;public class Class1public static void main( String args )tryFile oDir = new File( . );String strList;/如果没有命令行参数就取当前目录下的所有文件列表if( 0 = args.length )strList = oDir.list( );elsestrList = oDir.list( new DirFilter(args0);for( int i = 0; i strList.length; i + )System.out.println( strList i );catch( Exception e )System.out.println( e );class DirFilter implements FilenameFilterString strPick;DirFilter( String pickname )this.strPick = pickname;public boolean accept( File dir, String name )return name.endsWith( strP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论