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();
}
}