JAVA面試題一 之 io流的操作


      /*定義一個文件輸入流,調用read(byte[] b)方法。
      將a.txt文件中的內容打印出來(byte數組大小限制為5)。*/

拿到題以后要先整理出思路:

分析可知:
      1.read(byte[] b)該方法屬於字節輸入流
      2.byte數組大小限制為5,當碰到中文的時候極易出現亂碼

解決的方案:使用內存流

public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("f.txt");
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        byte[] b = new byte[5];
        int len;
        while((len = fis.read(b))!=-1){
            baos.write(b,0,len);//將讀取的數據一次性從緩沖區中取出來
        }
        System.out.println(baos);
        
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM