选择题
1.A 2.A 3.B 4.C 5.C
简答题
1.字节流:输入流InputStream和字节输出流OutputStream。
字符流:字符输入流Reader和字符输出流Writer。
2.FileNotFoundException和IOException
public class ReaderAndWriterFile {
public static void main(String[] args) {
BufferedReader reader=null;
BufferedWriter writer=null;
try {
reader = new BufferedReader(fr);
writer = new BufferedWriter(fw);
String line = null;
StringBuffer sbf=new StringBuffer();
while ((line = reader.readLine()) != null) {
sbf.append(line);
}
writer.write(sbf.toString());
} catch (FileNotFoundException e) {
System.out.println("无此文件");
}catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(reader!=null)
reader.close();
if(writer!=null)
writer.close();
}catch (IOException e) {
e.printStackTrace();
}
}
}
}
public class ReadIinFile {
public static void main(String[] args) {
FileInputStream fis = null;
DataInputStream dis = null;
try {
fis = new FileInputStream("C:\\Windows\\win.ini");
dis = new DataInputStream(fis);
int temp;
while ( (temp = dis.read()) != -1) {
System.out.print((char)temp);
}
}catch (FileNotFoundException e) {
System.out.println("无此文件");
}catch (IOException ioe) {
ioe.printStackTrace();
}finally{
try {
if(fis!=null)
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
练习
public class InputAndOutputFile {
public static void main(String[] args) {
FileInputStream fis=null;
FileOutputStream fos=null;
try {
fis = new FileInputStream("D:/我的青春谁做主.txt");
fos = new FileOutputStream("C:/myFile/myPrime.txt",true);
byte[] words=new byte[1024];
while((fis.read())!=-1){
fis.read(words);
fos.write(words, 0, words.length);
}
System.out.println("复制完成,请查看文件!");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(fos!=null)
fos.close();
if(fis!=null)
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
练习·
public class ReaderAndWriterFile {
public void replaceFile(String file1,String file2) {
BufferedReader reader = null;
BufferedWriter writer = null;
try {
FileReader fr = new FileReader(file1);
FileWriter fw = new FileWriter(file2);
reader = new BufferedReader(fr);
writer = new BufferedWriter(fw);
String line = null;
StringBuffer sbf=new StringBuffer();
while ((line = reader.readLine()) != null) {
sbf.append(line);
}
System.out.println("替换前:"+sbf);
String newString=sbf.toString().replace("{name}", "欧欧");
newString = newString.replace("{type}", "狗狗");
newString = newString.replace("{master}", "李伟");
System.out.println("替换后:"+newString);
writer.write(newString);
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(reader!=null)
reader.close();
if(writer!=null)
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
ReaderAndWriterFile obj = new ReaderAndWriterFile();
}