Сохранение профилей в одну папку с нумерацией +1 к последнему

LuLzes

Client
Регистрация
21.04.2017
Сообщения
19
Благодарностей
1
Баллы
3
Очень хотелось бы реализовать такую фишку, чтобы профили сохранялись в одну папку со следующей номерацией относительно последнего. То есть сейчас 20 нарегал (профили 1-20 в папке), закрыл ZP, потом ещё 20 и во втором случае профили сохранялись бы начиная с 21 в папке.
То есть совершается запуск регистраций аккаунтов на сайте в несколько потоков (естественно присутствуют глобальные переменные) и в конце происходит сохранение профиля в формате {-Variable.НОМЕР-}.zpprofile к примеру.
Если последний файл в папке, к примеру, имеет название 9.zpprofile, то сохраняющемуся профилю присвоить 10 и сохранить 10.zpprofile.
Знаю как это устроить в однопотоке (получение списка файлов в папке -> сортировка списка по убыванию -> берем первый в списке -> берем число через регулярку и устанавливаем в переменную {-Variable.HOMEP-} -> прибавляем 1 к {-Variable.HOMEP-} -> сохраняем {-Variable.HOMEP-}.zpprofile).
А в многопотоке только смог организовать, что сам лично смотрю последний файл в папке, прибавляю про себя +1 и во входных настройках устанавливаю инициализацию с таким значением.
А как это организовать в многопотоке без моего участия? Это возможно?
 
Последнее редактирование:

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 223
Баллы
113
Возможно. Храните значение переменной во внешнем файле и все дела.
Можно, конечно и распарсить последнее значение, но смысла в этом нет.
 
  • Спасибо
Реакции: LuLzes и Dimionix

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Ещё пара вариантов:
- использовать глобальную переменную (пример использования)
- номера брать не по счётчику, а из списка, привязанного к файлу, с удалением. Сгенерировать можно кодом
C#:
string filePath = @"C:/numbers.txt"; // путь к файлу
File.WriteAllLines(filePath, Enumerable.Range(1, 1000).Select(x => x.ToString()));
 

Кирилл412

Пользователь
Регистрация
21.11.2018
Сообщения
146
Благодарностей
3
Баллы
18
Ещё пара вариантов:
- использовать глобальную переменную (пример использования)
- номера брать не по счётчику, а из списка, привязанного к файлу, с удалением. Сгенерировать можно кодом
C#:
string filePath = @"C:/numbers.txt"; // путь к файлу
File.WriteAllLines(filePath, Enumerable.Range(1, 1000).Select(x => x.ToString()));
Благодарю
 

Кирилл412

Пользователь
Регистрация
21.11.2018
Сообщения
146
Благодарностей
3
Баллы
18
Ещё пара вариантов:
- использовать глобальную переменную (пример использования)
- номера брать не по счётчику, а из списка, привязанного к файлу, с удалением. Сгенерировать можно кодом
C#:
string filePath = @"C:/numbers.txt"; // путь к файлу
File.WriteAllLines(filePath, Enumerable.Range(1, 1000).Select(x => x.ToString()));
string filePath = @"C:/numbers.txt"; // путь к файлу
File.WriteAllLines(filePath, Enumerable.Range(1, 1000).Select(x => x.ToString())); так работает
string filePath = @"E:\Zenna\Саша Рень\Короя шаблон!!!\joblab.ru\get\Список номеров резюме.txt"; // путь к файлу
File.WriteAllLines(filePath, Enumerable.Range(1, project.Variables["numberresume"].Value ).Select(x => x.ToString())); а так нет.. Не подсажешь?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)