- packagech09;
- importjava.io.BufferedReader;
- importjava.io.BufferedWriter;
- importjava.io.CharArrayReader;
- importjava.io.CharArrayWriter;
- importjava.io.File;
- importjava.io.FileInputStream;
- importjava.io.FileNotFoundException;
- importjava.io.FileReader;
- importjava.io.FileWriter;
- importjava.io.IOException;
- importjava.util.Scanner;
- classHomeworkch09{
- publicHomeworkch09(){
- System.out.println("第九章的课后练习题。");
- }
- //1.编写一个应用程序,读取一个文本文件的内容。
- publicvoidkey01(){
- Filefile=newFile("E:/Workspaced/javaHomeWork","hello.txt");//与当前应用程序同一目录
- //System.out.println(file.getPath());
- byteb[]="dd".getBytes();
- try{
- FileInputStreamfis=newFileInputStream(file);
- intn=0;
- //测试乱码
- Stringstr=null;
- while((n=fis.read(b,0,2))!=-1){//两个字节读,防止乱码
- str=newString(b,0,n);
- System.out.print(str);
- }
- }catch(FileNotFoundExceptione){//文件找不到的异常
- e.printStackTrace();
- }catch(IOExceptione){
- e.printStackTrace();
- }
- }
- //2.编写一个应用程序,将用户从键盘输入的10行文字存入文件。
- publicvoidkey02(){
- FileWriterfile=null;
- try{
- file=newFileWriter("myDoc.txt");
- BufferedWriterbw=newBufferedWriter(file);
- for(inti=0;i<10;i++){
- Scannerreader=newScanner(System.in);
- bw.write(reader.nextLine());
- bw.flush();
- }
- file.close();
- bw.close();
- }catch(IOExceptione){
- e.printStackTrace();
- }
- }
- //3,使用数组字符流将俄文字母写入内存,然后再从内存读出。
- /**答案输出俄文字母是32个,实际是33个,Ё和Е虽然也是两个不同的字母,但只是在口语中有区别,书写或印刷时可以把简略为Е。*/
- publicvoidkey03(){
- intstartPosition=(int)'А';//俄文首字母
- intendPosition=(int)'Я';//俄文末字母
- System.out.println("俄文字母共有:"+(startPosition-endPosition));
- //for(inti=1040;i<1072;i++){
- //System.out.print((char)i);
- //}
- intn=-1;
- CharArrayWriterout=newCharArrayWriter();
- for(inti=startPosition;i<=endPosition;i++){
- out.write(i);
- }
- CharArrayReaderin=newCharArrayReader(out.toCharArray());
- try{
- while((n=in.read())!=-1){
- if(n%2==0){
- System.out.println("/n");
- }
- System.out.printf("/t位置%d,字符/'%c/'",n,(char)n);
- }
- }catch(IOExceptione){
- e.printStackTrace();
- }
- }
- //4、编写一个应用程序,将用户从键盘输入的10个整数存入文件,然后顺序读出。
- publicvoidkey04(){//=============使用缓冲流=================
- Filefile=newFile("key04.txt");
- try{
- FileWriterout=newFileWriter(file);
- BufferedWriterout2=newBufferedWriter(out);
- inti=0;
- while(i<2){
- Scanners=newScanner(System.in);
- Stringstr=s.nextLine();
- out2.write(str);
- out2.newLine();//写入一个回行
- out2.flush();//刷新缓冲区
- i++;
- }
- FileReaderin=newFileReader(file);
- BufferedReaderin2=newBufferedReader(in);
- Stringintegers=null;
- while((integers=in2.readLine())!=null){
- System.out.println(integers);
- }
- }catch(FileNotFoundExceptione){
- e.printStackTrace();
- }catch(IOExceptione){
- e.printStackTrace();
- }
- }
- }
- publicclassCh09_1{
- publicstaticvoidmain(String[]args){
- Homeworkch09hk=newHomeworkch09();
- //测试位置
- }
- }
第九章输入输出流1-4
最新推荐文章于 2021-03-22 16:28:20 发布