- 填空题
- 根据流的方向,流可以分为两类:输入流和输出流。
- 根据操作对象的类型,可以将数据流分为字节流和字符流两种。
- 在java.io包中有4个基本类:InputStream、OutStream、Reader和Writer类。
- 选择题
- Java语言提供处理不同类型流的类所在的包是(D) A.java.sql B.java.util C.java.math D.java.io
- 在File类提供的方法中,用于创建目录的方法是(B) A.mkdir() B.mkdirs() C.list() D.listRoots()
- 程序如果要按行输入/输出文件中的字符,最合理的方法是采用(C)A.BufferedReader和BufferedWriter类 B.InputStream和OutputStream类 C.FileReader和FileWriter类 D.File_Reader和File_Writer类
- 下面哪个流类使用了缓冲区技术(A) A.BufferadOutputStream B.FileInputStream C.DataOutputStream D.FileReader
- 以下(D)是基于字节的文件输入流类。A. FileReader B. FileOutputSteam C. FileWriter D. FileInputSteam
- 编程题
- 编写一段代码,实现的功能是:统计一个文件中字母“A”和“a”出现的总次数
package com.java.base; import java.io.File; import java.io.FileInputStream; import java.io.IOException; //统计一个文件test.txt中字母‘A’和'a'出现的总次数。 /* * 读取文件:FileInputStream * 判断单个字符出现的次数,一次只能读一个,当读到的内容相符时,相应数量加1 */ public class TestDemo { public static void main(String[] args) { // TODO Auto-generated method stub //1.添加文件路径 File file=new File("F:\\大数据组件学习\\21.Java\\8.IO流\\test.txt"); //2.创建流,读取文件 FileInputStream fis=null; try { fis=new FileInputStream(file); int numA=0; int numa=0; int data=0; while((data=fis.read())!=-1) { if(new String((char)data+"").equals("a")) { numa++; } if(new String((char)data+"").equals("A")) { numA++; } } System.out.println("a的个数:"+numa); System.out.println("A的个数:"+numA); System.out.println("总数:"+(numa+numA)); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { try { fis.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
- 实现图片的复制操作
package com.java.base; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Test { public static void main(String[] args) throws IOException { copy(); } private static void copy() throws IOException { FileInputStream fis = new FileInputStream("F:\\大数据组件学习\\21.Java\\8.IO流\\a.bmp"); BufferedInputStream bufis = new BufferedInputStream(fis); FileOutputStream fos = new FileOutputStream("F:\\大数据组件学习\\21.Java\\8.IO流\\b.bmp"); BufferedOutputStream bufos = new BufferedOutputStream(fos); int ch = 0; while ((ch = bufis.read()) != -1) { bufos.write(ch); } bufos.close(); bufis.close(); } }
- 编写一段代码,实现的功能是:统计一个文件中字母“A”和“a”出现的总次数