diff --git a/src/eventlog/EventLogger.java b/src/eventlog/EventLogger.java index f7a47e12..e4380b6c 100644 --- a/src/eventlog/EventLogger.java +++ b/src/eventlog/EventLogger.java @@ -30,6 +30,14 @@ import util.TimeStamp; public abstract class EventLogger { + /* Illegal filename characters */ + private static final String[] mIllegalCharacters = { "#", "%", "&", "{", + "}", "\\", "<", ">", + "*", "?", "/", " ", + "$", "!", "'", "\"", + ":", "@", "+", "`", + "|", "=" }; + private Path mLogDirectory; private String mFileNameSuffix; private String mLogFileName; @@ -67,7 +75,7 @@ public abstract class EventLogger sb.append( "_" ); sb.append( mFileNameSuffix ); - mLogFileName = sb.toString(); + mLogFileName = replaceIllegalCharacters( sb.toString() ); Log.info( "Creating log file:" + mLogFileName ); @@ -81,6 +89,19 @@ public abstract class EventLogger } } + /** + * Replaces any illegal filename characters in the proposed filename + */ + private String replaceIllegalCharacters( String filename ) + { + for( String illegalCharacter: mIllegalCharacters ) + { + filename.replace( illegalCharacter, "_" ); + } + + return filename; + } + public void stop() { if( mLogFile != null )