Java語言學習(十):輸入/輸出

    Java中,I/O操做表明着輸入、輸出,Java全部的I/O機制都是基於數據流進行輸入輸出。java.io類包提供了不少的輸入輸出處理功能方法,你們能夠參考下JDK文檔中關於I/O的一些處理方法:JDK在線中文文檔java

    數據流是一串接二連三的數據的集合,在Java中常見的基本流通常指:InputStream、OutputStream、Reader、Writer這四個,其餘的都是他們派生出來的子類。他們之間也是有區別的:InputStream、OutputStream是處理8位的字節流數據,Reader、Writer是處理16位的字符流數據,相互間能夠轉化,這裏不作詳述了。數據庫

    數據流的使用多見於文件操做,如文件的讀寫,下面就以文件操做來講下I/O。api

    文件File類提供了不少的方法能夠獲取指定文件的屬性,如文件大小、修改時間等,而在Java中文件和文件夾都是統一由File進行管理,因此提供了isFile()和isisDirectory()方法來判斷是否爲文件或文件夾。下面經過一個實例來熟悉下其中一種讀寫操做:app

/*
* 替換文本文件內容
*/
File file = new File("D:\\Yoki\\a.txt");
FileReader fir = null;
FileWriter fiw = null;
StringBuilder sBuilder = new StringBuilder();
char[] temp = new char[1024];
if(file != null){
   try {
      //建立文件讀流
      fir = new FileReader(file);
      //讀入文件中的內容
      while((fir.read(temp))!=-1){
          sBuilder.append(temp);
      }
      //替換字符串
      String str = sBuilder.toString().replace("on", "in");
      //建立文件寫流
      fiw = new FileWriter(file);
      fiw.write(str);
   }catch (FileNotFoundException e) {
      e.printStackTrace();
   }catch (IOException e) {
      e.printStackTrace();
   }finally{
      try {
          //釋放資源
          fiw.close();
          fir.close();
      }catch (IOException e) {
          e.printStackTrace();
      }
   }
}

    運行後能夠看到文本文件中的字符串已被替換了。上面的實例中須要注意幾點:文件類File的使用,流的建立使用,資源釋放的問題,try-catch代碼塊捕獲異常等。ui

    在讀取文本文件時,可使用BufferReader類,它的readLine()方法能夠方便的從文件中讀入一行數據,返回讀入的字符串,聲明以下:.net

public String readLine() throws IOExceptoin

    注意:在向MYSQL中保存圖片時,數據庫表中對應字段的類型應該是TINYBLOB、BLOB、MEDIUMBLOB或者LONGBLOB之一。code

    其餘的輸入輸出流這裏不一一詳述了,使用大都是同樣的,你們能夠本身嘗試編寫實例驗證。圖片

相關文章
相關標籤/搜索