2015-01-14 60 views
0

我是Gradle構建腳本中的新功能。說,我的文件系統中有兩個屬性文件。我想讀取兩個屬性文件&中的所有字段寫入新的屬性文件。如何在gradle中實現這一點?在gradle構建腳本中讀寫屬性文件

例如,file1.properties包含:

name = John 
age = 30 

file2.properties包含:

gender = male 

我想我的構建腳本讀取所有字段在兩個文件中&寫到不同位置的新文件。這是新文件包含:

name = John 
age = 30 
gender = male 

如何做到在gradle這個?

回答

0

可以在常規試試這個簡單的腳本:

def targetFile = new File("<combinedFileWithPath>") 

// Create directory structure of the target file before writing the file 
targetFile.parentFile.mkdirs() 

// Create target file using writer 
targetFile.withWriter { w -> 

    // List of input files 
    ["<firstFilePath>", "<secondFilePath", "<thirdFilePath>"].each { f -> 

     // Use reader on current file 
     new File(f).withReader { r -> 

      // Append data from each file to the writer of the combined file 
      w << r << "\n" 
     } 
    } 
} 
+0

搖籃抱怨說,沒有這樣的文件或目錄combinedFile.properties。爲什麼Gradle抱怨它?當然,沒有這樣的文件,這是它應該生成的文件。有任何想法嗎? – user842225

+0

這很奇怪。你寫新文件的路徑是否可寫?另外,請確保直到文件路徑的文件夾確實存在(文件不必存在,但文件夾結構應該存在)。 –

+0

編輯我的答案,創建文件之前創建父文件夾結構。 –

相關問題