2017-09-27 4 views
1

文字列をファイルに保存して場所を指定する方法は?私はpath << 'string'を使用して保存しますが、ファイルの最後にそれを示します。 xml(path)ファイルの宛先に</databaseChangeLog>があります。その単語が出現する前にファイルに保存したい。文字列をファイルに保存する場所を指定する方法

Javaソリューションclickがありますが、それは静的な行です。私のファイルは動的なものになります。私は行が分かれば分かりません。

def add_to_version() { 
    def path = new File('C:/groovy/version-1.xml')  
    def branchId = "Promt" 
    def lineCount = 0 

    def count = path.eachLine { line ->   
    if(line.contains('<include file="' + branchId + '/' + branchId + '.xml" ')){ 
     wordCount++    
    }else if(lineCount == 1){ 
     println "package is there" 
    } 
} 
    if(lineCount == 0){ 
    path << '<include file="' + branchId + '/' + branchId + '.xml" ' + 'relativeToChangelogFile="true"/>'  
    } 
} 

上記のコードがあることを行う:このバリアントは維持しません

def add_to_version(String branchId) { 
    def path = new File('C:/groovy/version-1.xml')  
    def xml = new XmlParser().parse(path) 
    xml.appendNode("include", [ 
     file:"${branchId}/${branchId}.xml", 
     relativeToChangelogFile:"true" 
    ]) 
    groovy.xml.XmlUtil.serialize(xml, path.newOutputStream()) 
} 

:あなたはこのようにXMLパーサーを使用することができます enter image description here

+0

あなたの質問を変更して、ファイルの内容の例と変更後の内容を提示してください。一般的には、メモリ内の全ファイルを読み込み、読み込まれたデータを変更してファイルに書き戻す必要があります。 Groovyでは、xmlparser(またはxmlslurper)を使用してxmlを読み取り操作できます。 – daggett

+0

私はxmlファイルを追加したいと思います:) xmlparserを見て... –

答えて

2

xml1 をし、私はそのようなXMLを取得したいですxmlの書式設定とコメント

xmlは有効です

+0

それは素晴らしいです。仕事の完璧:)ありがとう! –

関連する問題