Одной возможной проблемой, которую я вижу, является использование буквального слеша forward в качестве разделителя пути, когда Windows использует слэш back . Ваша система может интерпретировать косую черту как часть имени, а не как разделитель, а в Windows косая черта - это недопустимый символ для имени файла .
Чтобы полностью избежать этой проблемы, я бы позволил java API отсортировать разделитель, используя соответствующий конструктор new File(String parent, String child)
для вашего dir-файла (вместо того, чтобы создавать собственный путь), то есть:
File dir = new File("logs", s);
Другая проблема заключается в том, что stamp
может содержать символы, которые являются недопустимыми для имен файлов в вашей файловой системе.