亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

java讀取apollo配置 java判斷文件夾是否存在該文件


java讀取apollo配置 java判斷文件夾是否存在該文件

文章插圖
所謂的 IO 即 Input(輸入)/Output(輸出)  , 當(dāng)軟件與外部資源(例如:網(wǎng)絡(luò) , 數(shù)據(jù)庫(kù) , 磁盤(pán)文件)交互的時(shí)候 , 就會(huì)用到 IO 操作 。而在IO操作中 , 最常用的一種方式就是流 , 也被稱為IO流 。IO操作比較復(fù)雜 , 涉及到的系統(tǒng)調(diào)用比較多 , 相對(duì)操作內(nèi)存而言性能很低 。然而值得興奮的是 , Java提供了很多實(shí)現(xiàn)類以滿足不同的使用場(chǎng)景 , 這樣的實(shí)現(xiàn)類有很多 , 我只挑選些在日常編碼中經(jīng)常用到的類進(jìn)行說(shuō)明 , 本節(jié)主要介紹和文件操作相關(guān)的流 , 下面一起來(lái)瞧瞧吧 。
File
File是Java在整個(gè)文件IO體系中比較基礎(chǔ)的類 , 它可以實(shí)現(xiàn)對(duì)文件 , 文件夾以及路徑的操作 , 譬如:創(chuàng)建文件或文件夾 , 獲取絕對(duì)路徑 , 判斷是否存在 , 重命名 , 刪除 , 獲取當(dāng)前目錄下的文件或文件夾等操作 。
File file = new File("example"); //相對(duì)路徑 System.out.println(file.getAbsolutePath()); //獲取絕對(duì)路徑 System.out.println(file.getName()); //獲取名稱 System.out.println(file.exists()); //判斷文件或文件夾是否存在 boolean result = file.mkdirs();// 把 example 當(dāng)成文件夾來(lái)創(chuàng)建,mkdirs()為級(jí)聯(lián)創(chuàng)建System.out.println(result); result = file.createNewFile();// 把 example 當(dāng)成文件夾來(lái)創(chuàng)建System.out.println(result);在使用File的時(shí)候有幾點(diǎn)需要注意:
傳入File中的參數(shù)路徑可以存在也可以不存在 。傳入File中的參數(shù)路徑如果是相對(duì)路徑 , 那么這個(gè)路徑是相對(duì)于當(dāng)前Java Project根目錄的 。當(dāng)傳入的路徑不存在的時(shí)候 , 是無(wú)法根據(jù) isDirectory() 或 isFile() 來(lái)判斷是文件夾還是文件當(dāng)有需求進(jìn)行遍歷指定目錄下所有指定后綴名或是指定名稱文件或文件夾時(shí) , 需要在ListFile的參數(shù)中提供一個(gè)名為filter的過(guò)濾器來(lái)幫助實(shí)現(xiàn)過(guò)濾功能 , 這個(gè)過(guò)濾器Java是不進(jìn)行提供的 , 要根據(jù)自己的需求來(lái)實(shí)現(xiàn) 。如果要使用這個(gè)方法需要實(shí)現(xiàn)FileFilter 類 。如下實(shí)現(xiàn)了一個(gè)過(guò)濾指定文件的后綴名的過(guò)濾器 。
class ExtendNameFilter implements FileFilter {private String extendName;public ExtendNameFilter(String extendName) { this.extendName = extendName; }public boolean accept(File dir){ if(dir.isDirectory()) return true; return dir.getName().endsWith(this.extendName); }}// 篩選指定文件夾下文件以.java結(jié)尾的文件File[] files = file.listFiles(new ExtendNameFilter(".java")); for(File f : files) { System.out.println(f.getName()); }File還有很多常用的操作 , 由于篇幅有限這里就不逐個(gè)演示 , 更多操作的使用方式和如上示例在調(diào)用方法上沒(méi)有任何區(qū)別 , 主要注意參數(shù)和返回值即可 。
字節(jié) , 字符和編碼格式
對(duì)于字節(jié) , 字符和編碼格式這里不做概念性的描述 , 詳細(xì)的釋義網(wǎng)上有很多 , 請(qǐng)自行查閱 。但從表現(xiàn)形式上對(duì)于它們可以大致這樣理解:字節(jié)和字符對(duì)于系統(tǒng)數(shù)據(jù)而言表現(xiàn)形式是不同的 , 可以通過(guò)打開(kāi)一些文件來(lái)觀察 , 如果打開(kāi)的是圖片或者是可執(zhí)行程序文件 , 那么就會(huì)看到一些類似于亂碼的東西;而如果是文本文件 , 基本上會(huì)看到明文數(shù)據(jù) , 例如“你好” , “Hello World”等 。對(duì)于前一種看不懂的就是使用字節(jié)來(lái)表示的 , 能看的懂得就是使用字符來(lái)表示的 。而字符也是通過(guò)字節(jié)來(lái)存儲(chǔ)的 , 只不過(guò) , 在不同的編碼格式中所使用的字節(jié)數(shù)是不一樣的 , 具體哪些字符需要多少個(gè)字節(jié)表示需要對(duì)應(yīng)的編碼表 。例如:使用GBK編碼存儲(chǔ)漢字字符 , 則用2個(gè)字節(jié)來(lái)表示 , 但在UTF8中則使用3個(gè)字節(jié)來(lái)表示


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!

「愛(ài)刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助: