Проверьте, существует ли файл, и если это так, создайте новый файл с большим номером - PullRequest
2 голосов
/ 20 марта 2011

Я пытаюсь вывести набор точек, которые создает моя программа, и я хотел бы иметь возможность запускать его несколько раз без необходимости вручную перемещать файлы или переименовывать их. Файлы, которые я вывожу, будут иметь имя типа «cluster-1.txt» (может быть изменено при необходимости). Поэтому мне нужно, чтобы моя программа выяснила, существует ли выходной файл кластера, найдите файл с наибольшим номером и создайте файл с большим номером.

Например, если программа запускается впервые, она проверит, не найдет файл и создаст «cluster-0.txt»; если программа запущена во второй раз, она проверит и найдет «cluster-0.txt» и создаст «cluster-1.txt»; если программа работает n-й раз, она проверит и найдет файл с наибольшим значением n и создаст файл с именем cluster-n + 1.txt.

Если возможно, он должен игнорировать все отсутствующие файлы в середине. Итак, если у меня есть cluster-0.txt, cluster-10.txt и cluster-11.txt, он должен создать cluster-12.txt. Это не обязательно, однако.

Ответы [ 2 ]

2 голосов
/ 20 марта 2011
  1. Читать все файлы в каталоге. class File
  2. Разбор имени файла и получение номера. class String
  3. Выберите только наибольшее число. класс Integer и класс Math
  4. Если существует наибольшее число, создайте файл- [наибольшее число + 1] .txt еще cluster-1.txt
1 голос
/ 20 марта 2011

Проще всего получить все имена файлов в выходном каталоге, используя File.list , затем найдите те, которые соответствуют вашему шаблону, либо с логикой с ручным кодированием, либо с Regex, Просканировав весь список, вы узнаете, какое наибольшее число из существующих.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...