Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
43 / 17 / 4
Регистрация: 22.02.2012
Сообщений: 327

Как автоматически определить имя нового файла в иерархии папок?

18.03.2016, 11:36. Показов 855. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго дня.

Есть корневая папка, допустим "C:\\static"
В ней должна быть архитектура - папки с именами от 00 до 99. В каждой их этих папок еще такой же набор папок.
И так 3 уровня. На последнем уровне будут лежать файлы, не более 100 штук в папке.
Итого путь до файла должен иметь такой вид:
C:\\static\00\00\00\filename.jpg
...
C:\\static\99\99\99\filename.jpg

Сделано это для того что бы не создавать тяжелых для ОС каталогов, думаю многие такое видели в интернет магазинах.
Пример http://static3.ptecs.ru/P0/02/72/83/81/4b.jpg

Но дело в том что заполняться они будут постепенно. И нужен скрипт который автоматически проверит есть ли место в последней папке для файла или для папки, и если есть то он вернет путь для файла, если нет то создаст новую папку(папки) и тоже вернет путь до них. Кстати создавать папку и не обязательно, вроде джава сама создает каталоги пл пути до файла если его нету.

Не могли бы вы подсказать как написать такой скрипт, ибо я сам домыслить не могу.
(если есть библиотека для таких целей буду рад узнать)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.03.2016, 11:36
Ответы с готовыми решениями:

Как при вводе нового имени определить, есть ли уже такое имя в файле или нет?
как при вводе нового имени сравнить есть ли уже такое имя в файле или нет, типа регистрация <form action="_.php"> ...

Имя файла и нового листа через переменную
Задача: в папке есть несколько текстовых файлов, каждый заканчивается "_1.txt", "_2.txt", и тд. Папку и полный путь задаю в коде...

Как автоматически определить кодировку при открытии текстового файла?
Есть прорамма типа блокнот. Для текста используется RTB. После открытия файла у пользователя есть возможность поменять кодировку в...

5
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
18.03.2016, 12:24
Цитата Сообщение от Gabriel.exe Посмотреть сообщение
Не могли бы вы подсказать как написать такой скрипт
на джава не пишут скриптов
0
43 / 17 / 4
Регистрация: 22.02.2012
Сообщений: 327
18.03.2016, 12:34  [ТС]
Я не правильно выразился. Код, который проверит каталоги и вернет имя нового фала.
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
18.03.2016, 15:34
Gabriel.exe, вам нужно что-то типа этого
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
18.03.2016, 16:28
я бы сразу создал структуру папок )
сразу все три уровня, потом никакого гимора с проверками и созданием каталогов, можно сосредоточиться только на файлах, тем более что

но с другой стороны
три уровня по 100 наименований в каждом, получается 1_000_000 шутк
и это только каталоги

не проще будет сделать один уровень вложенности и давать имена файлам по шаблону?
как минимум профит будет количества каталогов, не 1 миллион, а всего 100, есть разница?
Цитата Сообщение от Gabriel.exe Посмотреть сообщение
тяжелых для ОС каталогов
можно ссылку что такое тяжелые для ос каталоги?
0
43 / 17 / 4
Регистрация: 22.02.2012
Сообщений: 327
18.03.2016, 16:58  [ТС]
Добавлено через 5 минут
Цитата Сообщение от Паблито Посмотреть сообщение
можно ссылку что такое тяжелые для ос каталоги?
Если честно я сам не знаю что это. Но как то давно в одной книге, читал что ОС может увеличивать время чтения файла если в папке их лежит слишком много. Это как на у себя открыть папку в которой 10000 картинок - они подгрузятся не сразу. На этом мои знания заканчиваются.
Но думаю что в них есть дола правды. Ибо как тогда объяснить что на всех сайтах которые отдают большое кол-во статики, эта статика распихана по разным папкам.
http://static3.ptecs.ru/P0/02/72/83/81/4b.jpg
http://static2.kupivip.ru/V0/02/71/59/09/1s.webp
http://st-im.kinopoisk.ru/im/k... 344688.jpg
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.03.2016, 16:58
Помогаю со студенческими работами здесь

Блокнот: как определить, идет модификация файла или создание нового
Пишу простенький блокнот. Есть 2 кнопки - "Сохранить" и "Сохранить как...". При "Сохранить как..." вестимо открывается диалог ввода...

из поля Edit получить имя для нового файла. Возникает ошибка
Здравствуйте. Хочу написать программу "блокнот с заметками". при редактировании поля Memo, его содержимое сохраняется в файл. Если файла...

Меню на основе иерархии папок
Доброго времени. Нужно сделать фотогалерею. Идея такая: на сервере создать каталог Photos и далее подкаталоги (Животные, Пейзажи и...

Как определить имя запускаемого jar файла
Допустим есть jar файл, пользователь его запускает, после чего ссылку на него надо добавить в реестр. Полный путь вместе с именем того...

Копирование файла, если имя старого и нового файлов передается в командной строке
..помогите. даже не знаю с чего начать...лаба по ос..работаем в putty..а задание такое.. операции с файлами в программе на языке си ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru