Forum: PC-Programmierung java: im NetBeans Debugger läufts, auf der Kommandozeile nicht…


von Uhu U. (uhu)


Lesenswert?

Folgendes Codefragment soll in einen Pfadnamen das aktuelle Jahr 
substituieren:
1
String dataPath = "data-%y.txt";
2
String y = Integer.toString(LocalDateTime.now().getYear(), 10);
3
dataPath = dataPath.replaceAll("%y", y);

Im Debugger von NetBeans 11 kommt wie erwartet "data-2019.txt" dabei 
raus.

Wenn ich das Programm mit derselben java VM auf der Kommandozeile oder 
über einen Launcher starte, lautet das Ergebnis

   data-.txt

Das Jahr wird noch korrekt berechnet und in einen String umgewandelt. 
Lediglich die Substitution replaceAll versagt.

Woran kann das liegen?

: Bearbeitet durch User
von Uhu U. (uhu)


Lesenswert?

Wenn ich "%y" durch "#y" ersetze, funktioniert es…

Warum es mit % im Debugger funktioniert, nicht aber von der 
Kommandozeile aus, bleibt nebulös.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.