Следующий код записывается в каталог classes
вместе с файлами классов.
Как отмечали другие, остерегайтесь перезаписывать файлы классов. Лучше всего поместить ваши новые файлы в отдельный каталог; однако этот каталог должен уже существовать. Чтобы создать его, создайте подкаталог в ресурсах источника, возможно, содержащий пустой файл. Например, src\main\resources\dir\empty.txt
.
public class WriteResource {
public static void main(String[] args) throws FileNotFoundException {
String thing = "Text to write to the file";
String dir = WriteResource.class.getResource("/").getFile();
//String dir = WriteResource.class.getResource("/dir").getFile();
OutputStream os = new FileOutputStream(dir + "/file.txt");
final PrintStream printStream = new PrintStream(os);
printStream.println(thing);
printStream.close();
}
}
Это делает трюк, но я бы нервничал из-за развертывания этого вне строго контролируемой среды. Мне не очень нравится идея несанкционированного доступа к моей директории classes
!