用Groovy讀取本地檔案的程式碼
下面這些包預設已經被匯入了,不需要使用import再次顯式匯入:
- java.io.*
- java.lang.*
- java.math.BigDecimal
- java.math.BigInteger
- java.net.*
- java.util.*
- groovy.lang.*
- groovy.util.*
Groovy的執行時方法呼叫抉擇
執行時,Groovy根據引數型別決定具體哪一個方法被執行。而Java恰恰相反,被呼叫的方法根據引數型別,在編譯期間就已經定下來了。
In Groovy, the methods which will be invoked are chosen at runtime. This is called runtime dispatch or multi-methods. It means that the method will be chosen based on the types of the arguments at runtime. In Java, this is the opposite: methods are chosen at compile time, based on the declared types.
下列程式碼的列印結果是1:
int method(String arg) {
return 1;}int method(Object arg) {
return 2;}Object o = "Object";int result = method(o);println result
在Groovy裡,成對的大括號是宣告閉包用的,因此定義陣列的語法改用中括號:
int[] array = [1, 2, 3]
Groovy裡的閉包,it為預設引數:
Closures may have 1...N arguments, which may be statically typed or untyped. The first parameter is available via an implicit untyped argument named it if no explicit arguments are named. If the caller does not specify any arguments, the first parameter (and, by extension, it) will be null.
That means that a Groovy Closure will always have at least one argument, called it (if not specified otherwise) and it will be null if not given as a parameter.
看個用Groovy讀取本地檔案內容的程式碼,和Java比起來短小精悍:
我的檔案內容:
輸出:
這種方法也行:
完整程式碼:
new File('c:\\temp\\1.txt').eachLine('UTF-8') {
println "new line->" + it
}
new File('c:\\temp\\1.txt').withReader('UTF-8') { reader ->
reader.eachLine {
println "Another line:" + it
}
}
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2704276/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java動態指令碼Groovy讀取配置檔案Java指令碼
- Python實用方法之讀取本地檔案Python
- java呼叫window本地應用程式;讀取TXT型別檔案Java型別
- spark直接讀取本地檔案系統的檔案Spark
- 用 ABAP 讀取本地文字檔案內容試讀版
- 讀取本地Excel檔案生成echartsExcelEcharts
- python程式碼讀取遠端檔案的方法--paramikoPython
- Java讀取本地檔案內容並輸出Java
- JavaScript讀取文字檔案內容程式碼例項JavaScript
- Python中檔案讀取與儲存程式碼示例Python
- Mendmix程式碼解析:百搭的配置檔案讀取工具ResourceUtils
- Rust 程式設計,讀取檔案Rust程式設計
- 用 PHP 讀取檔案的正確方法PHP
- JavaScript讀取本地檔案內容(相容低版本IE)JavaScript
- go–讀取檔案的方式Go
- 任意檔案讀取
- Java 讀取檔案Java
- 自定義 loader 讀取 *.vue 檔案原始碼Vue原始碼
- Android讀取配置檔案的方法Android
- go配置檔案讀取Go
- python讀取大檔案Python
- springboot讀取配置檔案Spring Boot
- 用友任意檔案讀取
- viper 讀取配置檔案
- matlab讀取npy檔案Matlab
- python小白檔案讀取Python
- cocos讀取plist檔案
- python 讀取文字檔案Python
- IOC - 讀取配置檔案
- 前端讀取excel檔案前端Excel
- 如何在Shell指令碼中逐行讀取檔案指令碼
- 基於.NET的程式讀取Excel檔案的解決方案Excel
- 利用html5 file api讀取本地檔案(如圖片、PDF等)HTMLAPI
- Java中的獲取檔案的物理絕對路徑,和讀取檔案Java
- 直播系統原始碼,讀取多行文字、讀取檔案分割多行文字原始碼
- python讀取yaml配置檔案的方法PythonYAML
- 新型任意檔案讀取漏洞的研究
- csv檔案的寫入和讀取