2010-11-23 14 views
2

Ich habe eine Situation, wo ich eine große Anzahl von XSD-Dateien durchsuchen muss, und ersetzen Sie eine Instanz einer Zeichenfolge durch eine andere Zeichenfolge auf der Grundlage des Dateinamens des aktuellen Schemas untersucht.ANT: Ersetzen String in Datei mit Dateiname selbst

Zum Beispiel: Ich möchte die Zeichenfolge ersetzen: ‚DataSet‘ in file1.xsd mit der Zeichenfolge ‚file1DataSet‘ ich die Zeichenfolge ersetzen möchten: ‚DataSet‘ in file2.xsd mit der Zeichenfolge ‚file2DataSet‘ und so weiter, bis alle Schemas geändert wurden.

Ich würde gerne wissen, ob es trotzdem zu tun ist, ohne die ant-contrib für Schleifen zu verwenden.

Antwort

1

Sie könnten die <replace> Aufgabe versuchen, wenn Sie eine allgemein gute Idee haben, wie viele Schemas Sie haben. Die <replaceRegex> könnte dies ohne Schleifen tun.

Ant ist nicht wirklich eine Programmiersprache, in der Sie Schleifen können. Wenn Sie alles in einem Durchgang machen können, ist das großartig, aber sobald Sie anfangen, wirklich Dateien zu manipulieren, stößt Ant auf Einschränkungen.

+0

ja, ich endete um den 25. November herum oder so und verwendete ant-contribs mit einer foreach Zielschleife, die auf einen Pfadkonvertierer mit einem verketteten Mapper zeigte, um den Dateinamen und ein einfaches Anweisung. – happy