java I/O系統的類實在是太多了,這裡我們只學習一些基本的和常用的,相信能夠把握這些就可以解決我們以後的普通應用了
1.什麼是資料流 ?
資料流是指所有的資料通訊通道
有兩類流,InputStream and OutputStream,Java中每個串流的基本功能都依賴它們
InputStream 用於read,OutputStream 用於write, 讀和寫入都是相對與記憶體說的,讀就是從其他地方把資料拿進內存,寫就是把資料從記憶體推出去
這兩個都是抽象類,不能直接使用
2.InputStream 的方法有:
read() 從流讀入數據有3中方式:
int read() 一次讀取一個位元組
int read(byte[]) 讀多個位元組到陣列中
int read(byte[],int off,int len) 指定從陣列的哪裡開始,讀取多長
skip() 跳過流中若干位元組
available() 返回流中可用位元組數,但基於網路時無效,回傳0
markSupported() 判定是否支援標記與重設操作
mark(markSupported() 判定是否支援標記與重設操作
mark( ) 在流中標記一個位置,要與markSupported()連用
reset() 返回標記過的位置
close() 關閉流
3.OutputStream 的方法:
write(int) 寫一個位元組到流中
write (byte[]) 將數組中的內容寫入流中
write(byte[],int off,int len) 將數組中從off指定的位置開始len長度的資料寫到流中
close() 關閉流
flush() 將緩衝區中的資料強制輸出
4.File 類
File 可以表示檔案也可以表示目錄,File 類別控制所有硬碟操作
建構器:
File(File parent,String child)用父類別和 檔案名稱建構
File(String pathname) 用絕對路徑建構
File(String parent,String child) 使用父親目錄與檔案名稱建構
File(URI uri) 以遠端檔案建構
常用方法:
boolean createNewFile(); boolean exists();
例子:
//建立 test.txt 文件對象,判定是否存在,不存在就創建
import java.io.*;
public class CreateNewFile{java.io.*;
public class ]){
File f=new File("test.txt");
try{
if(!f.exists())
f.createNewFile();
else
System.out.PRintln("exists");
else
System.out.PRintln("exists") ;
}catch(Exception e){
e.printStackTrace();
}
}
}
boolean mkdir()/mkdirs()
boolean renameToFile(File /mkdirs() 的差異與 renameTo 的用法
import java.io.*;
public class CreateDir{
public static void main(String args[]){
public static void main(String args[]){
public static void main(String args[]){
File static File f1=new File("Dir");
File f2=new File("Top/Bottom");
File f3=new File("newTest.txt");
try{
f.renameTof3);
f1.mkdir();
f2.mkdirs();
}catch(Exception e){
e.printStackTrace();
}
}
}
String /getName()
範例://硬碟上沒有parent 目錄和 test.txt 文件,但我們仍然可以操作,因為我們創建了他們的對象,是對物件進行操作
import java.io.*;
public class Test{
public static void main(String args[]){
File f=new File("parent/test.txt");
File f1=new File("newTest.txt");
File f1=new File("newTest. .out.println(f.getParent());
System.out.println(f.getName());
System.out.println(f1.getPath());
System.out.println(f1.getAbsolutePath ());
}catch(Exception e){
e.printStackTrace();
}
}

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA

本文解釋了用於構建分佈式應用程序的Java的遠程方法調用(RMI)。 它詳細介紹了接口定義,實現,註冊表設置和客戶端調用,以解決網絡問題和安全性等挑戰。

本文詳細介紹了用於網絡通信的Java的套接字API,涵蓋了客戶服務器設置,數據處理和關鍵考慮因素,例如資源管理,錯誤處理和安全性。 它還探索了性能優化技術,我

本文詳細介紹了創建自定義Java網絡協議。 它涵蓋協議定義(數據結構,框架,錯誤處理,版本控制),實現(使用插座),數據序列化和最佳實踐(效率,安全性,維護


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

記事本++7.3.1
好用且免費的程式碼編輯器

Dreamweaver CS6
視覺化網頁開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具