Hallo,
ich benutze ein MessageFormat zur Erstellung eines Dateinamens.
Anschließend möchte ich den Dateinamen wieder mittels des MessageFormats parsen.
Erstellung des Dateinamen:
Parsen des Dateinamen:
Bei mir lokal funktioniert das mit folgendem String wunderbar:
Bei einem Freund scheitert das Parsen mit einer Parse-Exception:
Wenn wir bei dem Freund das ".txt" am Ende wegnehmen, funktioniert wieder alles.
Wir haben das beide mit Java 1.5 und Java 1.6 laufen lassen.
Bei mir läuft es unter beiden Versionen, bei meinem Freund unter keiner der Versionen.
Hat jeman eine Idee, was wir falsch machen?
ich benutze ein MessageFormat zur Erstellung eines Dateinamens.
Anschließend möchte ich den Dateinamen wieder mittels des MessageFormats parsen.
Code:
private static final MessageFormat FILENAME_FORMAT = new MessageFormat("event_{0}_{1,time,yyyyMMddHHmmssSSS}.{2,number,000}.txt");
Erstellung des Dateinamen:
Code:
public synchronized String getFileName() {
Date tstamp = new Date();
if (tstamp.equals(lastUsedIdTimestamp)) {
idCount++;
} else {
lastUsedIdTimestamp = tstamp;
idCount = 0;
}
return FILENAME_FORMAT.format(new Object[]{getCloneId(), lastUsedIdTimestamp, new Integer(idCount)});
}
Parsen des Dateinamen:
Code:
File file = files[i];
String fileName = file.getName();
try {
Object[] patternObjects = FILENAME_FORMAT.parse(fileName);
Bei mir lokal funktioniert das mit folgendem String wunderbar:
Code:
"event_NA_20111110142214529_000.txt"
Bei einem Freund scheitert das Parsen mit einer Parse-Exception:
Code:
java.text.ParseException: MessageFormat parse error!
at java.text.MessageFormat.parse(MessageFormat.java:1021)
at com.test.project.event.Test.parseFiles(Test.java:109)
Wenn wir bei dem Freund das ".txt" am Ende wegnehmen, funktioniert wieder alles.
Wir haben das beide mit Java 1.5 und Java 1.6 laufen lassen.
Bei mir läuft es unter beiden Versionen, bei meinem Freund unter keiner der Versionen.
Hat jeman eine Idee, was wir falsch machen?