JDK 12的Files.mismatch方法
JDK 12為Files類引入了一種新方法。該
Files.mismatch(Path,Path)
方法已透過JDK-8202302引入JDK 12,並在JDK 12 Early Access Build 20中提供(同樣的早期訪問構建支援新的{@systemProperty} Javadoc標記)。
JDK-8202302 [“(fs)用於比較檔案的新Files.mismatch方法”]新增
Files.mismatch(Path,Path)
方法“比較兩個檔案的內容以確定它們之間是否存在不匹配”,並可用於確定“兩個檔案是否是等於。” 曾經有人談過新增Files.isSameContent()方法,但
Files.mismatch(Path,Parh)
由於其與Arrays.mismatch和Buffer.mismatch方法的一致性,決定使用它。
下一個程式碼清單包含一個簡單的Java類,它演示了新的,
Files.mismatch(Path,Path)
並將其與Files.isSameFile(Path,Path)進行了對比。
包 塵。例子。jdk12。檔案 ;
匯入 java。nio。檔案。檔案 ;
匯入 java。nio。檔案。路徑 ;
import static java。郎。系統。出 ;
/ **
*演示JDK 12引入的{@code Files.mismatch(Path,Path)}
*用於確定兩個檔案是否具有相同的內容
*如果他們不是相同的檔案。
* /
公共 類 FilesDemo
{
public static void main(final String [] arguments)丟擲 異常
{
if(引數。長度 < 2)
{
出。println(“USAGE:FilesDemo <file1Name> <file2Name>”);
迴歸 ;
}
final String file1Name = arguments [ 0 ];
final path file1Path = Path。of(file1Name);
final String file2Name = arguments [ 1 ];
final path file2Path = Path。of(file2Name);
出。println(“\ nFiles'” + file1Name + “'和'” + file2Name + “'是”
+(檔案。isSameFile(file1Path,file2Path)? “的”:“不是”)
+ “相同。\ n \ n”);
出。println(“\ nFiles'” + file1Name + “'和'” + file2Name + “'是”
+(檔案。不匹配(file1Path,file2Path)== - 1 ? “”“:”不是“)
+ “相同的內容。\ n \ n”);
}
}
當針對各種檔案組合執行上述程式碼時,它提供在下一個表中捕獲的結果。
檔案關係
Files.isSameFile(Path,Path)Files.mismatch(Path,Path)
另外
Files.mismatch(Path,Path)
一個步驟是完成JDK-6852033 [“輸入/輸出方法使常見的I / O任務變得容易”],並且更容易確定兩個不同檔案的檔案何時仍然“相等”或者擁有相同的內容。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31557424/viewspace-2221270/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JDK12新特性詳解JDK
- 不同JDK版本之間的intern()方法的區別-JDK6 VS JDK6+JDK
- 如何將jdk12的原始碼匯入ideaJDK原始碼Idea
- 還沒用上 JDK 11吧,JDK 12 早期訪問構建版使用JDK
- JDK環境變數的兩種配置方法——以JDK8和JDK10為例JDK變數
- 那些jdk中坑你沒商量的方法JDK
- JDK 12又來了,我學不動了...JDK
- Java - 12 方法Java
- CentOS 安裝 jdk1.8 的三種方法CentOSJDK
- JDK1.7 和 JDK1.8 共存,快速處理方法及切換JDK
- JDK安裝方法、使用方法和層次結構JDK
- JDK1.8_HashMap原始碼__tableSizeFor方法解析JDKHashMap原始碼
- JDK12 Collectors.teeing 你真的需要了解一下JDK
- JDK的搭建JDK
- JDK的配置JDK
- JavaScript中的12種迴圈遍歷方法JavaScript
- 整理一些 JDK 中 Integer 實用但不常用的方法JDK
- 最全eclipse自由輕鬆來回切換專案的jdk版本的方法EclipseJDK
- Java入門第12天 (方法過載 ,方法的引數傳遞)Java
- 提高網站安全性的12種基本方法網站
- 原始碼-JDK1.8HashMap擴容方法resize()解析原始碼JDKHashMap
- JDK1.8之內建函式式介面(方法引用的實現)JDK函式
- Spring框架系列(12) - Spring AOP實現原理詳解之JDK代理實現Spring框架JDK
- 關於IOS製作p12證書的方法iOS
- 這12種方法輕鬆合併Python中的列表Python
- 2018-12-14jQuery 效果 - toggle() 方法jQuery
- JDK的第三個LTS版本JDK17來了JDK
- 【JDK】JDK原始碼分析-ReentrantLockJDK原始碼ReentrantLock
- 聊聊jdk httpclient的executorJDKHTTPclient
- 聊聊jdk http的HeaderFilterJDKHTTPHeaderFilter
- JDK的安裝配置JDK
- JDK註解的引入JDK
- JDKJDK
- jdk5到jdk10各個版本的新特性JDK
- jdk1.6升級jdk1.8踩出的神坑JDK
- 【JDK】JDK原始碼分析-AbstractQueuedSynchronizer(3)JDK原始碼
- 【JDK】JDK原始碼分析-AbstractQueuedSynchronizer(2)JDK原始碼
- 【JDK】JDK原始碼分析-AbstractQueuedSynchronizer(1)JDK原始碼