In einem Stück Gradle Code möchte ich einen aktuellen Ordnernamen erhalten, ohne den Pfad zu teilen. Aber alle Versuche, die ich versuchte:Warum Groovy und Java einen Punkt anstelle des Dateinamens zurückgeben?
Paths.get(".").getFileName()
new File(".").getName()
new File(".").name
, geben Sie einen Punkt "." anstelle des Namens. Gibt es eine Funktion, die den Namen angibt, keine andere Zeichenfolge, mit der der Ordner adressiert werden könnte?
Was interessant ist, wenn ich benutze:
String currentDirPath = new File(".").absolutePath
println currentDirPath
currentDirPath = currentDirPath.substring(0,currentDirPath.lastIndexOf("\\"))
println currentDirPath
String currentDir = currentDirPath.substring(currentDirPath.lastIndexOf("\\")+1)
, es zu sehen ist, dass der Pfad-String sieht wie:
C:\Users\543829657\workspace\dev.appl.ib.cbl\application\.
So ist es einfach falsch ist die letzte Teilkette zu nehmen, nachdem '\'. Aber alle diese drei Funktionen nehmen nicht den Namen des wirklich aktuellen Ordners, sondern den letzten "."!
Ausgezeichnet! Richtig die richtige Funktionskombination, und auch eine sehr nützliche zusätzliche Information. Ich habe das Task-FROM-Child-Verzeichnis gestartet und wollte es von dort aus ausführen. Ich wusste nicht, dass es keine Art von Arbeit ist. – Gangnus
Der Ordner-Name, den ich sowieso brauche - um zu überprüfen, dass die Aufgabe aus dem richtigen Ordner aufgerufen wurde. Wenn nicht, würde es einen Haufen Probleme schaffen. Es ist schade, dass ich Ihnen nicht zwei Stimmen geben kann. – Gangnus