java如何通過FileOutputStream字節(jié)流向文件中寫數(shù)據(jù)
通過FileOutputStream字節(jié)流向文件中寫數(shù)據(jù)
使用FileOutputStream寫入文件的總體過程為
用File存放文件地址 用FileOutputStream打開輸出流 用write函數(shù)寫入數(shù)據(jù) close函數(shù)關(guān)閉輸出流
用File打開本地文件()
//第一步 用File打開本地文件
File f = new File("C:\\my_file.txt");用FileOutputStream打開輸出流
FileOutputStream fout = new FileOutputStream(f);//創(chuàng)建輸出流
write( byte [ ] )寫入數(shù)據(jù)
//這里寫入字符串“你好,java;你好,世界” String str = "你好,java;你好,世界"; //定義好要寫入文件的字符串 byte[] b = str.getBytes(); //將字符串轉(zhuǎn)化為字節(jié)數(shù)組 fout.write(b); //將字節(jié)寫入文件中
關(guān)閉輸出流
fout.close(); //記得寫完要關(guān)閉輸出流
運(yùn)行截圖:

整體代碼:
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class my_FileOutStream {
public static void main(String[] args) throws IOException {
//第一步 用File打開本地文件
File f = new File("C:\\my_file.txt");
FileOutputStream fout = new FileOutputStream(f);//創(chuàng)建輸出流
//這里寫入字符串“你好,java;你好,世界”
String str = "你好,java;你好,世界"; //定義好要寫入文件的字符串
byte[] b = str.getBytes(); //將字符串轉(zhuǎn)化為字節(jié)數(shù)組
fout.write(b); //將字節(jié)寫入文件中
fout.close(); //記得寫完要關(guān)閉輸出流
}
}java 字節(jié)流向文件中寫入指定內(nèi)容
java 提供了文件讀和寫的功能
寫主要分為字符流 和 字節(jié)流
字符流 就像這樣

這是一個老男孩的歌詞 是我們能看懂的語言
字符流則是

這是一個被編譯過的java文件 是計(jì)算機(jī)語言 是我們看不懂的 這就是要用字節(jié)流處理
能用字符流處理的就用字符流 不能用字符流處理的就用字節(jié)流 不知道能不能用字符流處理的 也用字節(jié)流
字節(jié)流是萬能的
我們先來看一段代碼
import java.io.FileOutputStream;
import java.io.IOException;
public class text {
public static void main(String args[]) throws IOException {
FileOutputStream File = new FileOutputStream("D:\\學(xué)習(xí)案例\\java\\color.java");
File.write(97);
}
}
這里我們引入并使用了FileOutputStream 用它創(chuàng)建了一個文件對象 這里需要注意的是 如果你放的這個目錄中 文件如果不存在 他是會幫你創(chuàng)建一個文件的
我的 D:\學(xué)習(xí)案例\java 文件夾下 并沒有這個 color.java

然后我們運(yùn)行代碼

可以看到 程序就幫我們創(chuàng)建了這個 color.java 當(dāng)然 如果你有 那也不影響
染后我們打開查看內(nèi)容

此時就發(fā)現(xiàn)不對了 write 寫入方法 傳的是個 97 怎么變成 a 了?
確實(shí)字節(jié)內(nèi)容時有一個轉(zhuǎn)換的 97對應(yīng)的就是 a
如果你想要 9 就是
File.write(57);
字節(jié)中 57 對應(yīng)數(shù)字 9
File.write(55);
55 對應(yīng)的就是 7
我們將color.java文件內(nèi)容清空 然后將java代碼改成
public static void main(String args[]) throws IOException {
FileOutputStream File = new FileOutputStream("D:\\學(xué)習(xí)案例\\java\\color.java");
File.write(57);
File.write(55);
}
運(yùn)行后 再打開color.java 就看到 97啦

如果你對字節(jié)流的轉(zhuǎn)換有興趣 可以去具體了解一下
還有一個很重要的點(diǎn) 那就是 close函數(shù)的調(diào)用
File.close();
我們用了io流就要用close釋放系統(tǒng)資源
close方法放在程序的最后就行 相當(dāng)于告訴計(jì)算機(jī) 這個io資源我用完啦 你可以釋放他啦
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Mybatis如何獲取insert新增數(shù)據(jù)id值
這篇文章主要介紹了Mybatis如何獲取insert新增數(shù)據(jù)id值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
java實(shí)現(xiàn)簡單銀行ATM系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡單銀行ATM系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05
性能調(diào)優(yōu)之java服務(wù)器容器調(diào)優(yōu)詳解
這篇文章主要介紹了java服務(wù)器容器調(diào)優(yōu),如果接口響應(yīng)時間超過了既定數(shù)據(jù),項(xiàng)目支撐不了這么大的請求,就需要對項(xiàng)目以及項(xiàng)目接口進(jìn)行數(shù)據(jù)庫、容器、緩存等方面的調(diào)優(yōu),文章中有詳細(xì)的代碼示例,需要的朋友可以參考一下2023-04-04
Java調(diào)用C++動態(tài)庫超詳細(xì)步驟講解(附源碼)
C語言因其高效和接近硬件的特性,時常會被用在性能要求較高或者需要直接操作硬件的場合,這篇文章主要介紹了Java調(diào)用C++動態(tài)庫的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-04-04
SpringBoot整合kaptcha實(shí)現(xiàn)圖片驗(yàn)證碼功能
這篇文章主要介紹了SpringBoot整合kaptcha實(shí)現(xiàn)圖片驗(yàn)證碼功能,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07
java中l(wèi)ist.forEach()和list.stream().forEach()區(qū)別
這篇文章主要介紹了java中l(wèi)ist.forEach()和list.stream().forEach()區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03

