国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

Java FileInputStream與FileOutputStream使用詳解

瀏覽:3日期: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
相關文章:
主站蜘蛛池模板: 好湿好紧好痛a级是免费视频 | 久久精品全国免费观看国产 | 99爱在线视频 | 暖暖视频日韩欧美在线观看 | 久草网视频 | 欧美高清日本三级人妇 | 久久国产精品女 | 国产亚洲免费观看 | 精品免费久久久久久久 | 一级一片一a一片 | 欧美无极品 | 日本综合欧美一区二区三区 | 欧美 日韩 国产 在线 | 日韩在线不卡一区在线观看 | 国产精品96久久久久久久 | 国产成人综合亚洲 | 亚洲第一se情网站 | 免费欧洲毛片a级视频无风险 | 亚洲欧美视频在线观看 | 天天精品在线 | 400部大量精品情侣网站 | 九九爱精品| 中文字幕1区 | 99久久www免费 | 国产成人精品免费视频大全可播放的 | 欧美精品在线视频 | 手机看片国产免费永久 | 欧美成人二区 | 黄色免费在线观看视频 | 欧美高清不卡 | 亚洲羞羞裸色私人影院 | 亚洲第一在线 | 亚洲人在线 | 高清黄色毛片 | 99午夜高清在线视频在观看 | 手机看片国产欧美日韩高清 | 老鸭窝 国产 精品 91 | 国产一级片毛片 | 国产在线精品香蕉综合网一区 | 亚洲精品午夜在线观看 | 一区二区三区在线播放 |