создать временный каталог с префиксом суффикс - PullRequest
0 голосов
/ 02 июля 2019
File tempDir;
tempDir = File.createTempFile("mda", ".temp");
tempDir.delete();
tempDir.mkdir();  // Noncompliant

Приведенный выше код сгенерирует словарь, подобный 'mda3249275551502192003.temp', но сначала он сгенерирует файл, а затем удалит его.У меня возникла проблема с сонаром, такая как «Использование File.createTempFile в качестве первого шага при создании временного каталога, вызывает состояние гонки и является по своей природе ненадежным и небезопасным. Вместо этого Files.createTempDirectory (Java 7+) или библиотечная функция, такая как Guava, аналогичнос именем Files.createTempDir. "Предлагаемое решение заключается в следующем.Но createTempDirectory принимает только префикс и генерирует что-то вроде 'mda3249275551502192003', но я хочу 'mda3249275551502192003.temp'

Compliant Solution
Path tempPath = Files.createTempDirectory("mda");
File tempDir = tempPath.toFile();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...