亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

Java FileInputStream與FileOutputStream使用詳解

瀏覽:2日期:2023-12-06 10:22:04
什么是InputStream和OutputStream?

InputStream和OutputStream是抽象類,是所有字節輸入流和輸出流的父類。這里,我們首先要分清楚兩個概念:

InputStream(輸入流):輸入流是用來讀入數據的。- - - > > >讀入 OutputStream(輸出流):輸出流是用來寫出數據的。- - - > > >寫出文件輸入流——FileInputStream

FileInputStream 從文件系統中的某個文件中獲得輸入字節。

構造方法

//通過打開一個到實際文件的連接來創建一個 FileInputStream,該文件通過文件系統中的 File 對象 file 指定。public FileInputStream(File file);//通過打開一個到實際文件的連接來創建一個 FileInputStream,該文件通過文件系統中的路徑名 name 指定。public FileInputStream(String name);常用的方法從輸入流中讀取一個字節大小的數據

//從此輸入流中讀取一個數據字節。public int read();從輸入流一次讀取一個字節數組

//從此輸入流中將最多 b.length 個字節的數據讀入一個 byte 數組中。public int read(byte[] b);//從此輸入流中將最多 len 個字節的數據讀入一個 byte 數組中。off:目標數組 b 中的起始偏移量。public int read(byte[] b,int off,int len);從文件中讀取數據:

import java.io.FileInputStream;/** * FileInputStream:節點流(低級流),從文件中讀入數據 * @author Administrator * */public class FISDemo01 { public static void main(String[] args){String content=null;try { int size=0; //定義一個字節緩沖區,該緩沖區的大小根據需要來定義 byte[] buffer=new byte[1024]; FileInputStream fis=new FileInputStream('FOSDemo.txt'); //循環來讀取該文件中的數據 while((size=fis.read(buffer))!=-1){content=new String(buffer, 0, size);System.out.println(content); }//關閉此文件輸入流并釋放與此流有關的所有系統資源。 fis.close();} catch (Exception e) { e.printStackTrace();} }}文件輸出流——FileOutputStream

文件輸出流是用于將數據寫入到文件中。

構造方法

//創建一個向指定 File 對象表示的文件中寫入數據的文件輸出流。public FileOutputStream(File file);//創建一個向指定 File 對象表示的文件中寫入數據的文件輸出流。如果第二個參數為 true,則將字節寫入文件末尾處,而不是寫入文件開始處。public FileOutputStream(File file,boolean append);//創建一個向具有指定名稱的文件中寫入數據的輸出文件流。public FileOutputStream(String name);//創建一個向具有指定 name 的文件中寫入數據的輸出文件流。如果第二個參數為 true,則將字節寫入文件末尾處,而不是寫入文件開始處。public FileOutputStream(String name,boolean append);常用方法向文件中寫入一個字節大小的數據

//向文件中寫入一個字節大小的數據public void write(int b);向文件中一次性寫入一個字節數組的數據

//將 b.length 個字節從指定 byte 數組寫入此文件輸出流中。public void write(byte[] b);//指定 byte 數組中從偏移量 off 開始的 len 個字節寫入此文件輸出流。 public void write(byte[] b,int off,int len);向文件中寫出數據:

import java.io.FileOutputStream;/** * FileOutputStream:節點流(低級流),向文件中寫出數據 * @author Administrator * */public class FOSDemo01 { public static void main(String[] args){try { //向文件中寫入字節數組 String font='輸出流是用來寫入數據的!'; FileOutputStream fos = new FileOutputStream('FOSDemo.txt'); fos.write(font.getBytes()); //關閉此文件輸出流并釋放與此流有關的所有系統資源。此文件輸出流不能再用于寫入字節。 如果此流有一個與之關聯的通道,則關閉該通道。 fos.close();} catch (Exception e) { e.printStackTrace();} }}使用FileInputStream和FileOutputStream實現文件的復制

import java.io.FileInputStream;import java.io.FileOutputStream;/** * 使用文件輸入流和文件輸出流實現文件的復制 * @author Administrator * */public class SummaryFISAndFOS { public static void main(String[] args){/** * 1.先將文件中的內容讀入到輸入流中 * 2.將輸入流中的數據通過輸出流寫入到目標文件中 * 3.關閉輸入流和輸出流 */try { long begin=System.currentTimeMillis(); //從輸入流中讀取數據 FileInputStream fis=new FileInputStream('FOSDemo.txt'); //向輸出流中寫入數據 FileOutputStream fos=new FileOutputStream('FISAndFOSDest.txt'); //先定義一個字節緩沖區,減少I/O次數,提高讀寫效率 byte[] buffer=new byte[10240]; int size=0; while((size=fis.read(buffer))!=-1){fos.write(buffer, 0, size); } fis.close(); fos.close(); long end=System.currentTimeMillis(); System.out.println('使用文件輸入流和文件輸出流實現文件的復制完畢!耗時:'+(end-begin)+'毫秒');} catch (Exception e) { e.printStackTrace();}//解決JNI問題(Java Native Interface)System.exit(0); }}

運行結果: 使用文件輸入流和文件輸出流實現文件的復制完畢!耗時:17毫秒

以上基本上就是我們經常用到的方法的介紹,記得最后一定要close()哦!

到此這篇關于Java FileInputStream與FileOutputStream使用詳解的文章就介紹到這了,更多相關Java FileInputStream與FileOutputStream內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 日韩在线亚洲 | 92自拍视频 | 国产美女在线精品亚洲二区 | 中文字幕一区日韩在线视频 | 精品一区二区三区免费毛片爱 | 日韩三级在线观看视频 | 国产在线成人一区二区 | 日韩专区亚洲综合久久 | 国产91丝袜美腿在线观看 | 男人天堂中文字幕 | 欧美日韩精品一区二区视频在线观看 | 免费国产成人α片 | 国产成人精品免费视频大全办公室 | 国产老妇k | 中文字幕中文字幕在线 | 国产黄色小视频 | 国产精品亚洲精品日韩已满 | 精品国产日韩久久亚洲 | 亚洲国产毛片aaaaa无费看 | 久久九九免费 | 最新国产三级 | 日本一本久道 | 国产区一区二区三区 | 狠狠色丁香婷婷综合 | 成人午夜私人影院入口 | 久久久在线视频精品免费观看 | 男女免费观看在线爽爽爽视频 | 亚洲人视频在线观看 | 成人免费网站视频www | 国产亚洲欧美成人久久片 | 亚洲国产精品第一区二区 | 午夜在线播放免费人成无 | 亚洲欧美成人影院 | 美女很黄免费 | 国产欧美日韩精品第一区 | 久揄揄鲁一二三四区高清在线 | 亚洲精品久久久久久久久久久网站 | 久久精品视频一区二区三区 | 亚洲黄色三级视频 | 中美日韩在线网免费毛片视频 | 天堂影院jav成人天堂免费观看 |