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)文章
SpringBoot過濾敏感詞的兩種實(shí)現(xiàn)方式
Spring Boot本身并不直接提供過濾敏感詞的功能,但你可以使用第三方庫或者自定義過濾器來實(shí)現(xiàn)這個需求,所以本文給大家介紹了SpringBoot過濾敏感詞的兩種實(shí)現(xiàn)方式,感興趣的朋友可以參考下2024-06-06
Spring Boot+Shiro實(shí)現(xiàn)一個Http請求的Basic認(rèn)證
本文向向大家仔細(xì)的介紹了如何使用Shiro實(shí)現(xiàn)一個Http請求的Basic認(rèn)證,有此需求的朋友可以參考下本文2021-06-06
Sping?Security前后端分離兩種實(shí)戰(zhàn)方案
這篇文章主要介紹了Sping?Security前后端分離兩種方案,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
Java利用MultipartFile實(shí)現(xiàn)上傳多份文件的代碼
這篇文章主要介紹了Java利用MultipartFile實(shí)現(xiàn)上傳多份文件的代碼,非常不錯,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
Java 高并發(fā)二:多線程基礎(chǔ)詳細(xì)介紹
本文主要介紹Java 高并發(fā)多線程的知識,這里整理詳細(xì)的資料來解釋線程的知識,有需要的學(xué)習(xí)高并發(fā)的朋友可以參考下2016-09-09
Spring數(shù)據(jù)庫事務(wù)的實(shí)現(xiàn)機(jī)制講解
這篇文章主要介紹了Spring數(shù)據(jù)庫事務(wù)的實(shí)現(xiàn)機(jī)制講解,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10

