新聞中心
FileOutputStream

java.lang.Object
|---java.io.OutputStream
|---|---java.io.FileOutputStream
public class FileOutputStream
extends OutputStream
文件輸出流是用于將數(shù)據(jù)寫入 File 或 FileDescriptor 的輸出流。 文件是否可用或是否可以創(chuàng)建取決于底層平臺。 特別是某些平臺,一次只允許一個 FileOutputStream(或其他文件寫入對象)打開一個文件進行寫入。 在這種情況下,如果所涉及的文件已經(jīng)打開,則此類中的構(gòu)造函數(shù)將失敗。
FileOutputStream 用于寫入原始字節(jié)流,例如圖像數(shù)據(jù)。 要寫入字符流,請考慮使用 FileWriter。
Since:
JDK1.0
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| FileOutputStream(File file) | 創(chuàng)建一個文件輸出流以寫入由指定 File 對象表示的文件。 |
| FileOutputStream(FileDescriptor fdObj) | 創(chuàng)建一個文件輸出流以寫入指定的文件描述符,它表示與文件系統(tǒng)中實際文件的現(xiàn)有連接。 |
| FileOutputStream(File file, boolean append) | 創(chuàng)建一個文件輸出流以寫入由指定 File 對象表示的文件。 |
| FileOutputStream(String name) | 創(chuàng)建文件輸出流以寫入具有指定名稱的文件。 |
| FileOutputStream(String name, boolean append) | 創(chuàng)建文件輸出流以寫入具有指定名稱的文件。 |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| void | close() | 關(guān)閉此文件輸出流并釋放與此流關(guān)聯(lián)的所有系統(tǒng)資源。 |
| protected void | finalize() | 清理與文件的連接,并確保在不再引用此流時調(diào)用此文件輸出流的 close 方法。 |
| FileChannel | getChannel() | 返回與此文件輸出流關(guān)聯(lián)的唯一 FileChannel 對象。 |
| FileDescriptor | getFD() | 返回與此流關(guān)聯(lián)的文件描述符。 |
| void | write(byte[] b) | 將指定字節(jié)數(shù)組中的 b.length 個字節(jié)寫入此文件輸出流。 |
| void | write(byte[] b, int off, int len) | 從偏移量 off 開始的指定字節(jié)數(shù)組中寫入 len 個字節(jié)到此文件輸出流。 |
| void | write(int b) | 將指定字節(jié)寫入此文件輸出流。 |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 從類 java.io.OutputStream 繼承的方法 |
|---|
| flush |
構(gòu)造函數(shù)詳細信息
FileOutputStream
public FileOutputStream(String name) throws FileNotFoundException
創(chuàng)建文件輸出流以寫入具有指定名稱的文件。 創(chuàng)建一個新的 FileDescriptor 對象來表示此文件連接。
首先,如果有一個安全管理器,它的 checkWrite 方法會以名稱作為參數(shù)被調(diào)用。
如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開,則拋出 FileNotFoundException。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| name | 系統(tǒng)相關(guān)的文件名 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| FileNotFoundException | 如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開 |
| SecurityException | 如果安全管理器存在并且其 checkWrite 方法拒絕對文件的寫訪問。 |
FileOutputStream
public FileOutputStream(String name, boolean append) throws FileNotFoundException
創(chuàng)建文件輸出流以寫入具有指定名稱的文件。 如果第二個參數(shù)為 true,那么字節(jié)將被寫入文件的末尾而不是開頭。 創(chuàng)建一個新的 FileDescriptor 對象來表示此文件連接。
首先,如果有一個安全管理器,它的 checkWrite 方法會以名稱作為參數(shù)被調(diào)用。
如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開,則拋出 FileNotFoundException。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| name | 系統(tǒng)相關(guān)文件名 |
| append | 如果為 true,那么字節(jié)將被寫入文件的末尾而不是開頭 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| FileNotFoundException | 如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開。 |
| SecurityException | 如果安全管理器存在并且其 checkWrite 方法拒絕對文件的寫訪問。 |
Since:
JDK1.1
FileOutputStream
public FileOutputStream(File file) throws FileNotFoundException
創(chuàng)建一個文件輸出流以寫入由指定 File 對象表示的文件。 創(chuàng)建一個新的 FileDescriptor 對象來表示此文件連接。
首先,如果有安全管理器,則調(diào)用它的 checkWrite 方法,并將文件參數(shù)表示的路徑作為其參數(shù)。
如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開,則拋出 FileNotFoundException。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| file | 要打開以進行寫入的文件。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| FileNotFoundException | 如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開 |
| SecurityException | 如果安全管理器存在并且其 checkWrite 方法拒絕對文件的寫訪問。 |
FileOutputStream
public FileOutputStream(File file, boolean append) throws FileNotFoundException
創(chuàng)建一個文件輸出流以寫入由指定 File 對象表示的文件。 如果第二個參數(shù)為 true,那么字節(jié)將被寫入文件的末尾而不是開頭。 創(chuàng)建一個新的 FileDescriptor 對象來表示此文件連接。
首先,如果有安全管理器,則調(diào)用它的 checkWrite 方法,并將文件參數(shù)表示的路徑作為其參數(shù)。
如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開,則拋出 FileNotFoundException。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| file | 要打開以進行寫入的文件。 |
| append | 如果為 true,那么字節(jié)將被寫入文件的末尾而不是開頭 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| FileNotFoundException | 如果文件存在但是是目錄而不是常規(guī)文件,不存在但無法創(chuàng)建,或者由于任何其他原因無法打開 |
| SecurityException | 如果安全管理器存在并且其 checkWrite 方法拒絕對文件的寫訪問。 |
Since:
1.4
FileOutputStream
public FileOutputStream(FileDescriptor fdObj)
創(chuàng)建一個文件輸出流以寫入指定的文件描述符,它表示與文件系統(tǒng)中實際文件的現(xiàn)有連接。
首先,如果有一個安全管理器,它的 checkWrite 方法被調(diào)用,文件描述符 fdObj 參數(shù)作為它的參數(shù)。
如果 fdObj 為 null,則拋出 NullPointerException。
如果 fdObj 無效,此構(gòu)造函數(shù)不會引發(fā)異常。 但是,如果在結(jié)果流上調(diào)用方法以嘗試對流進行 I/O,則會引發(fā) IOException。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| fdObj | 為寫入而打開的文件描述符 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| SecurityException | 如果安全管理器存在并且它的 checkWrite 方法拒絕對文件描述符的寫訪問 |
方法詳情
write
public void write(int b) throws IOException
將指定字節(jié)寫入此文件輸出流。 實現(xiàn)OutputStream的write方法。
指定者:
寫在類 OutputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| b | 要寫入的字節(jié)。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
write
public void write(byte[] b) throws IOException
將指定字節(jié)數(shù)組中的 b.length 個字節(jié)寫入此文件輸出流。
覆蓋:
寫在類 OutputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| b | 數(shù)據(jù)。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
write
public void write(byte[] b, int off, int len) throws IOException
從偏移量 off 開始的指定字節(jié)數(shù)組中寫入 len 個字節(jié)到此文件輸出流。
覆蓋:
寫在類 OutputStream
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| b | 數(shù)據(jù)。 |
| off | 數(shù)據(jù)中的起始偏移量。 |
| len | 要寫入的字節(jié)數(shù)。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
close
public void close() throws IOException
關(guān)閉此文件輸出流并釋放與此流關(guān)聯(lián)的所有系統(tǒng)資源。 此文件輸出流可能不再用于寫入字節(jié)。
如果此流具有關(guān)聯(lián)的通道,則該通道也將關(guān)閉。
指定者:
在接口 AutoCloseable 中關(guān)閉
指定者:
在接口Closeable中關(guān)閉
覆蓋:
在類 OutputStream 中關(guān)閉
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
getFD
public final FileDescriptor getFD() throws IOException
返回與此流關(guān)聯(lián)的文件描述符。
返回:
FileDescriptor 對象,表示此 FileOutputStream 對象正在使用的文件系統(tǒng)中的文件的連接。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
getChannel
public FileChannel getChannel()
返回與此文件輸出流關(guān)聯(lián)的唯一 FileChannel 對象。
返回通道的初始位置將等于到目前為止寫入文件的字節(jié)數(shù),除非此流處于附加模式,在這種情況下它將等于文件的大小。 將字節(jié)寫入此流將相應(yīng)地增加通道的位置。 顯式或通過寫入更改通道的位置將更改此流的文件位置。
返回:
與此文件輸出流關(guān)聯(lián)的文件通道
Since:
1.4
finalize
protected void finalize() throws IOException
清理與文件的連接,并確保在不再引用此流時調(diào)用此文件輸出流的 close 方法。
覆蓋:
在類 Object 中完成
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)生 I/O 錯誤。 |
分享題目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSFileOutputStream
地址分享:http://www.fisionsoft.com.cn/article/cojgjoe.html


咨詢
建站咨詢
