Java的知识点25——IO、 数据源
IO
? ? ? ?1、I/O介紹
2、file
3、字節(jié)流
4、字符流
5、Commons IO
注:流:流動、流向,從一端移動到另一端(程序、數(shù)據(jù)源頭)(一切以程序為中心)。流是一個抽象、動態(tài)的概念,是一連串動態(tài)的數(shù)據(jù)集合。
?Java流式輸入/輸出原理
?
?
?
注:? ? 碼表:字符集:GBK、utf-8、Unicode?
繼承體系
構(gòu)造器:1、有
? ? ? ? ? ? ? ?2、沒有(私有的)(工具類 Math、靜態(tài)方法:Runtime)
關(guān)注方法的名稱、參數(shù)(形參)、具體的功能、返回值類型的東西
名稱分隔符:
package cn.dym12;import java.io.File;/*** \ / 名稱分隔符 separator* @author Administrator**/public class IO_study01 {public static void main(String[] args) {String path="D:\\java\\workspace\\D1\\src\\1.png";System.out.println(File.separatorChar); // \ 名稱分隔符 separator//建議// 1、 /path="D:/java/workspace/D1/src/1.png";System.out.println(path); // 2、 常量拼接path="D:"+File.separator+"java"+File.separator+"workspace"+File.separator+"D1"+File.separator+"src"+File.separator+"1.png";System.out.println(path); } }?
構(gòu)建File對象:
package cn.dym12;import java.io.File;/*** 構(gòu)建File對象* @author Administrator**/ public class FileDemo01 {public static void main(String[] args) {String path="D:/java/workspace/D1/src/cn/dym12/1.png";// 1、構(gòu)建File對象File src=new File(path);System.out.println(src.length()); // 2、構(gòu)建File對象src=new File("D:/java/workspace/D1/src/cn/dym12","1.png");System.out.println(src.length()); // 3、構(gòu)建File對象src=new File(new File("D:/java/workspace/D1/src/cn/dym12"),"1.png");System.out.println(src.length()); } }?
相對路徑與絕對路徑 :
package cn.dym12;import java.io.File;/*** 相對路徑與絕對路徑* 1)、存在盤符:絕對路徑* 2)、不存在盤符:相對路徑* @author Administrator**/ public class FileDemo01 {public static void main(String[] args) {String path="D:/java/workspace/D1/src/cn/dym12/1.png";//絕對路徑File src=new File(path);System.out.println(src.getAbsolutePath());//相對路徑System.out.println(System.getProperty("user.dir"));src=new File("1.png");System.out.println(src.getAbsolutePath());//構(gòu)建一個不存在的文件src=new File("aaa/15.png");System.out.println(src.getAbsolutePath());} }?
輸入(Input):可以讓程序從外部系統(tǒng)獲得數(shù)據(jù)(核心含義是“讀”,讀取外部數(shù)據(jù))。
常見的應(yīng)用:? 讀取硬盤上的文件內(nèi)容到程序。例如:播放器打開一個視頻文件、word打開一個doc文件。
? ? ? ? ?? 讀取網(wǎng)絡(luò)上某個位置內(nèi)容到程序。例如:瀏覽器中輸入網(wǎng)址后,打開該網(wǎng)址對應(yīng)的網(wǎng)頁內(nèi)容;下載網(wǎng)絡(luò)上某個網(wǎng)址的文件。
? ? ? ? ?? 讀取數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)到程序。
? ? ? ? ? 讀取某些硬件系統(tǒng)數(shù)據(jù)到程序。例如:車載電腦讀取雷達掃描信息到程序;溫控系統(tǒng)等。
?
輸出(Output):程序輸出數(shù)據(jù)給外部系統(tǒng)從而可以操作外部系統(tǒng)(核心含義是“寫”,將數(shù)據(jù)寫出到外部系統(tǒng))。
常見的應(yīng)用:? 將數(shù)據(jù)寫到硬盤中。例如:我們編輯完一個word文檔后,將內(nèi)容寫到硬盤上進行保存。
? ? ? ? ? ? 將數(shù)據(jù)寫到數(shù)據(jù)庫系統(tǒng)中。例如:我們注冊一個網(wǎng)站會員,實際就是后臺程序向數(shù)據(jù)庫中寫入一條記錄。
? ? ? ? ? ? 將數(shù)據(jù)寫到某些硬件系統(tǒng)中。例如:導(dǎo)彈系統(tǒng)導(dǎo)航程序?qū)⑿碌穆窂捷敵龅斤w控子系統(tǒng),飛控子系統(tǒng)根據(jù)數(shù)據(jù)修正飛行路徑。
?數(shù)據(jù)源
數(shù)據(jù)源data source,提供數(shù)據(jù)的原始媒介。常見的數(shù)據(jù)源有:數(shù)據(jù)庫、文件、其他程序、內(nèi)存、網(wǎng)絡(luò)連接、IO設(shè)備。
數(shù)據(jù)源分為:源設(shè)備、目標設(shè)備
??1. 源設(shè)備:為程序提供數(shù)據(jù),一般對應(yīng)輸入流。
??2. 目標設(shè)備:程序數(shù)據(jù)的目的地,一般對應(yīng)輸出流。
?
總結(jié)
以上是生活随笔為你收集整理的Java的知识点25——IO、 数据源的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java的知识点24——多线程技术理论—
- 下一篇: 计算机组成原理——I/O设备(外部设备)