zoukankan      html  css  js  c++  java
  • Educoder -Java高级特性

    第1关:什么是IO流

      1、编程要求:

      2、答案:

        1、BCD              2、C

    第2关:字节流-输入输出

      1、编程要求:

    • 读取src/step2/input/目录下的task.txt文件信息并输出到控制台,使用Java代码将字符串learning practice写入到src/step2/output/目录下的output.txt,若文件目录不存在,则创建该目录。

      注意:临时字节数组需要定义长度为8位,否则会有空格。

      

      2、测试效果:

        补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

      3、代码展示:

      

    package step2;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    //读取src/step2/input/目录下的task.txt文件信息并输出到控制台,使用Java代码将字符串learning practice写入到src/step2/output/目录下的output.txt,若文件目录不存在,则创建该目录。
    //注意:临时字节数组需要定义长度为8位,否则会有空格。
    public class Task {
        
        public void task() throws IOException{
            /********* Begin *********/
            
            File file = new File("src/step2/input/task.txt");
            FileInputStream fs =new FileInputStream(file);
            byte[] b =new byte[8];
            fs.read(b);
            String str = new String(b,"UTF-8");
            System.out.println(str);
    
    
          
            
            File dir = new File("src/step2/output");
            if(!dir.exists()){
                dir.mkdir();
            }
            FileOutputStream out = new FileOutputStream("src/step2/output/output.txt"); //创建输出流
            String str1 = "learning practice";
            byte[] c = str1.getBytes();   //将字符串转换成字节
            out.write(c);                 //写数据
            out.flush();                  //刷新缓存区数据
            fs.close();                      //释放资源
            out.close();
    
            
    }
    }

    第3关:字符流 - 输入输出

      1、编程要求:

    • src/step3/input/目录下的input.txt文件复制到src/step3/output/目录下;

    • 复制的新文件命名为output.txt

    • input.txt文件中只有8个字符。

      2、测试说明

       补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

      3、代码展示:

    package step3;
    
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class Task {
        
        public void task() throws IOException{
            /********* Begin *********/
            String file1 = "src/step3/input/input.txt";
            FileReader fr = new FileReader(file1);
            char[] ch = new char[8];
            fr.read(ch);
    
            String file2 = "src/step3/output/output.txt";
            FileWriter fw = new FileWriter(file2);
            fw.write(ch);
            
            fr.close();
            fw.flush();
            fw.close();
    
            
            
            
            
            /********* End *********/        
        }
    }

    第4关:复制文件

      1、编程要求

    • 复制src/step4/input/目录下的input.txt文件到src/step4/output/目录下,新文件命名为output.txt

    • 复制src/step4/input/目录下的input.jpg文件到src/step4/output/目录下,新文件命名为output.jpg

      2、测试效果

       补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

      3、代码展示

    package step4;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class Task {
        
        public void task() throws IOException{
            /********* Begin *********/
                String file1 = "src/step4/input/input.txt";
            FileInputStream fr = new FileInputStream(file1);
            byte[] b = new byte[1024];
            int len = 0;
    
            String file2 = "src/step4/output/output.txt";
            FileOutputStream fw = new FileOutputStream(file2);
            while((len = fr.read(b))!=-1){
                fw.write(b,0,len);
            }
            fr.close();
            fw.close();
    
            String file3 = "src/step4/input/input.jpg";
            String file4 = "src/step4/output/output.jpg";
            FileInputStream fs = new FileInputStream(file3); //定义文件输入流读取文件信息
            FileOutputStream fos = new FileOutputStream(file4);//定义文件输出流写文件
            len = 0;        //每次读取数据的长度
            byte[] bys = new byte[1024];    //数据缓冲区
            while( (len = fs.read(bys)) != -1){
                fos.write(bys, 0, len);
            }
            //释放资源  刷新缓冲区
            fs.close();
            fos.close();
    
    
            
            
            /********* End *********/        
        }
    }
  • 相关阅读:
    (转) c/c++调用libcurl库发送http请求的两种基本用法
    (转)unordered_map与map的对比(C++11新特性)
    libevent简单介绍
    libevent入门
    日期转换成字符串
    LinkServer
    GridView小记
    SoapHeader
    Credential
    Notepad++ Emmet/Zen coding插件的安装
  • 原文地址:https://www.cnblogs.com/MurasameLory-chenyulong/p/13732430.html
Copyright © 2011-2022 走看看