Синтаксическая ошибка в названии файла
При работе с сериализацией столкнулся с такой проблемой, что если в названии создаваемого файла окажется знак ? то вылетает ошибка:
java.io.FileNotFoundException: .\bin\saves\4. Test?.ser (Синтаксическая ошибка в имени файла, имени папки или метке тома)
При чем абсолютно не важно в какой части названия знак вопроса:
java.io.FileNotFoundException: .\bin\saves\4. Te?st.ser (Синтаксическая ошибка в имени файла, имени папки или метке тома)
Сама строка создания потока сериализации выглядит так:
ObjectOutputStream outputStream = new ObjectOutputStream(new FileOutputStream("./bin/saves/" + but.getText() + ".ser"));
Где я через but.getText() передаю будущее название файла. С остальными знаками я подобной проблемы вроде не испытываю.
Ответы (1 шт):
Windows это не UNIX !
Здесь спецсимволы, в т. ч. знак вопроса ?, в названиях файлов использовать нельзя.