Java习题4—IO流与异常

1、掌握字节流的文件读取——在D盘目录下创建HelloWorld.java;使用字节流的方式进行文件的读取并打印至控制台;计算所读取到的字节数,并在控制台打印


import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public  class TestOne {
public static void main  (String[] args) throws  IOException {
File file=new File("D:\\HelloWorld.java");
String s="Hello World";
FileInputStream fis=new FileInputStream(file);
FileOutputStream fos=new FileOutputStream("D:\\HelloWorld.java");

fos.write(s.getBytes());
int content=0;
int num=0;
while(((content=fis.read())!=-1)){
System.out.print((char)content);
num++;
}
System.out.println();
System.out.println("读取到的字节数是:"+num);
}
}

2、使用字节流的方式实现文件的复制——将D盘中的HelloWorld.java文件使用字节流的方式复制到D盘下HW.java文件

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

/*使用字节流的方式实现文件的复制---即通过使用FileInputStream类读取类文件中HelloWorld的内容并通过使用FileOutputStream类将所读到的内容写入到HW中
 *  将D盘中的HelloWorld.java文件使用字节流的方式复制到D盘下HW.java文件
*/
public  class TestTwo {
public static void main  (String[] args) throws  IOException {

FileInputStream fis=new FileInputStream("D:\\HelloWorld.java");
FileOutputStream fos=new FileOutputStream("D:\\HW.java");

int content;
while(((content=fis.read())!=-1)){
fos.write(content);
}


fis.close();
fos.close();


FileInputStream fis1=new FileInputStream("HW.java");

System.out.println("文件HW中的内容为:");
while(((content=fis1.read())!=-1)){
System.out.print((char)content);
}
fis1.close();
}
}

3、掌握字符流的文件读取——使用字符流的方式进行文件HelloWorld.java的读取并打印至控制台


import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;


public  class TestThird {
public static void main  (String[] args) throws  IOException {
File file=new File("D:\\HelloWorld.java");
FileReader fr=new FileReader(file);

int content=0;
while(((content=fr.read())!=-1)){
System.out.print((char)content);

}

}
}

4、使用字符流的方式实现文件的复制——将D盘中的HelloWorld.java文件使用字符流的方式复制到D盘下HelloWorld.bak文件;异常处理使用throws关键字


import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;


public  class TestFour {
public static void main  (String[] args) throws  IOException {

FileReader fr=new FileReader("D:\\HelloWorld.java");
FileWriter fw=new FileWriter("D:\\HelloWorld.bak");

int content;
while(((content=fr.read())!=-1)){
fw.write(content);
}


fr.close();
fw.close();


FileReader fr1=new FileReader("D:\\HelloWorld.java");

System.out.println("文件HelloWorld.bak中的内容为:");
while(((content=fr1.read())!=-1)){
System.out.print((char)content);
}
fr1.close();
}
}

5、三种方式读文件——使用FileReader类、BufferedReader类、FileInputStream类三种方式;从D盘下HelloWorld.java文件中读取全部信息并打印到控制台;异常处理使用throw关键字对可能的异常进行处理,细化异常的类型


import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;


public class TestFive {
public static void main(String[] args) throws IOException {
File file = new File("D:\\HelloWorld.java");


FileReader fr = new FileReader("D:\\HelloWorld.java");
BufferedReader bf=new BufferedReader(new FileReader("D:\\HelloWorld.java"));


FileInputStream fis = new FileInputStream("D:\\HelloWorld.java");
int i;

String line ;

System.out.println("用FileReader类读取信息:");
while ((i = fr.read()) != -1) {
System.out.print((char) i);
}
fr.close();

System.out.println();
System.out.println("用FileInputStream类读取信息:");
while ((i = fis.read()) != -1) {
System.out.print((char) i);
}
fis.close();

System.out.println();
System.out.println("用BufferedReader类读取信息:");
while ((line = bf.readLine()) != null) {
System.out.println(line);
}
bf.close();


}
}

6、三种方式写文件——使用PrintWriter类、BufferedWriter类、FileOutputStream类三种方式;用这三种方式分别将字符串“ABCDEFG”写入到D盘下HelloWorld1.txt、 HelloWorld2.txt、 HelloWorld3.txt文件中异常处理使用throws关键字,细化异常的类型


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;


public class TestSix {
public static void main(String[] args) throws IOException{


String s="ABDCEFGH";
PrintWriter pw = new PrintWriter("D:\\HelloWorld1.txt");
BufferedWriter bfw = new BufferedWriter(new FileWriter("D:\\HelloWorld2.txt"));
FileOutputStream fos = new FileOutputStream("D:\\HelloWorld3.txt");


pw.write(s);
pw.close();

bfw.write(s);
bfw.close();

fos.write(s.getBytes());
fos.close();




}
}

你可能感兴趣的:(Java习题4—IO流与异常)