//*遍历文件内容
def file = new File('../../ hello-groovy.iml')
file.eachLine {
line->println( line)
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="groovy-2.4.15" level="application" />
</component>
</module>*/ ```
}
##//*获取文件的内容
def text = file.getText()
println(text)
```/ * <?xml version =“1.0”encoding =“UTF-8”?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="groovy-2.4.15" level="application" />
</component>
</module>*/
//*获取文件另一种方式,按行读取,返回一个列表集合
def result = file.readLines()
println(result.toListString())
// [<?xml version =“1.0”encoding =“UTF- 8“?>,<module type =”JAVA_MODULE“version =”4“>,
// <component name =”NewModuleRootManager“inherit-compiler-output =”true“>,
// <exclude-output />,<content url =“file:// ”>,
// <sourceFolder url =“file:// / src”isTestSource =“false”/>,
// </ content>,<orderEntry type =“ inheritedJdk“/>,
// <orderEntry type =”sourceFolder“forTests =”false“/>,
// <orderEntry type =”library“name =”groovy-2.4.15“level =“application”/>,
// </ component>,</ module>]
//*获取文件部分内容(前20个字符)
def reader = file.withReader {
reader->char [] buffer=new char[20]
reader.read(buffer)
buffer
}
println(reader)// <?xml version =“1.0”
//*写文件
def writer = file.withWriter {闭包}
//*文件拷贝,groovy会自己关闭流
def results = copy('../ .. /hello-groovy.iml','..////hello-groovy32.iml')println(results)// true或false
def copy(String sourcePath,String destationPath){
try{
//创建目标文件
def desFile=new File(destationPath)
if(!desFile.exists()){
desFile.createNewFile()
}
//开始拷贝
new File(sourcePath).withReader {
reader->def lines=reader.readLines()
desFile.withWriter {
writer->
lines.each {
line->writer.append(line+'\r\n')
}
}
}
return truea
}catch (Exception e){
}
return false
}
//*对象的读写
ApplicationManager.init()
def person = PersonManager.createPerson('li',34)
def result3 = saveObject(person,'.. / .. / person.txt')
def result4 =(Person)readObject('../../ person.txt')
println(“ {result4.age}”)
//*保存对象
def saveObject(Object obj,字符串路径){
try{
//目标文件创建
def desFile=new File(path)
if(!desFile.exists()){
desFile.createNewFile()
}
//开始写object
desFile.withObjectOutputStream {
out->out.writeObject(obj)
}
return true
}catch (Exception e){
}
return false
}
//*读取对象
def readObject(String path){
def obj=null
try{
def desFile=new File(path)
if(!desFile.exists()|| desFile==null)return null
desFile.withObjectInputStream {input ->
obj=input.readObject()
}
}catch (Exception e){
}
return obj
}