View previous topic :: View next topic |
Author |
Message |
shveicar
Joined: 18 Apr 2011 Posts: 277 Location: Россия Москва
|
(Separately) Posted: Mon May 07, 2012 00:08 Post subject: |
|
|
Tol!k
Вам также, Большое Спасибо, никаких проблем, нет - можно сделать несколько батников с разными числовыми значениями, повесить их на кнопки и вуаля..
Разница, только, как Я уже упомянул, в скорости обработки, но главное, - всё работает. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 00:31 Post subject: |
|
|
Tol!k wrote: | а в чём профит изменения параметров? | А ты прочти 2, 3 пункты. Выбор одного-двух окон с заданием чисел, ничего в кнопке менять при необходимости не придётся. Вариантов можно задать несколько. |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Mon May 07, 2012 00:49 Post subject: |
|
|
Quote: | можно сделать несколько батников с разными числовыми значениями, |
Quote: | Выбор одного-двух окон с заданием чисел, | но ЗАЧЕМ?
Всё равно же ищется _единственное_ совпадение начало*.ext -- начало*\
так почему не задать максимально широкий диапазон поиска и больше не париться?
т.е. если найдено 2 (и более) совпадений – берётся диапазон на 1 символ шире;
если ни одного — файлы просто не перемещаются |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 01:07 Post subject: |
|
|
Зачем - я написал:
Flasher wrote: | ничего в кнопке менять при необходимости не придётся | что ускоряет подход в решении вновь возникшей задачи.
Tol!k wrote: | так почему не задать максимально широкий диапазон поиска и больше не париться? | Потому что это ограничит скорость обработки. В большинстве случаев более 10 символов не потребуется. Не 255 ставить же.
И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Окна всегда нужны для универсальности. Параметры - для более частых случаев. |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Mon May 07, 2012 01:17 Post subject: |
|
|
> Потому что это ограничит скорость обработки.
На полсекунды?
> Не 255 ставить же.
(255 - расширение - x:\ - 1) / 2
> В большинстве случаев более 10 символов не потребуется.
Найдено единственное совпадение – выход из цикла, и все дела.
> И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Ну а смысл? Хоть с 1 начинай, всё равно результатом должно быть единственное совпадение
Last edited by Tol!k on Mon May 07, 2012 01:20; edited 1 time in total |
|
Back to top |
|
|
shveicar
Joined: 18 Apr 2011 Posts: 277 Location: Россия Москва
|
(Separately) Posted: Mon May 07, 2012 01:17 Post subject: |
|
|
Господа.
Позвольте и мне добавить: Когда под рукой нет никаких инструментов - кроме отвертки, придется и ей - гвозди забивать. Но если есть выбор, каждый Сам решает, какой у него будет любимый инструмент. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 01:28 Post subject: |
|
|
Tol!k wrote: | На полсекунды? | Смотря сколько папок в получателе, файлов в каждой папке, какой камень, диск, число работающих сервисов, программ и т.д. Может быть легко и более 10 сек. Условия бывают разные.
Tol!k wrote: | (255 - расширение - x:\ - 1) / 2 | Зачем делить на 2?
Tol!k wrote: | Найдено единственное совпадение – выход из цикла, и все дела. | Там один выход из цикла. У меня же три цикла. Выйти из промежуточного не получится.
Tol!k wrote: | Ну а смысл? Хоть с 1 начинай, всё равно результатом должно быть единственное совпадение | Опять же возвращаемся к скорости обработки. Лишний проход не нужен.
Last edited by Flasher on Mon May 07, 2012 01:51; edited 1 time in total |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Mon May 07, 2012 01:35 Post subject: |
|
|
Quote: | Зачем делить на 2? |
результатом перемещения по максимуму будет
x:\ совпадение \ совпадение .расширение |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 01:51 Post subject: |
|
|
Tol!k
Можно поконкретней? Пока не понял. |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Mon May 07, 2012 02:10 Post subject: |
|
|
если результирующее полное имя будет длиннее
x:\ *здесь 123 символа* \ *здесь 123 символа* .ext
можно поиметь проблемы |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 02:14 Post subject: |
|
|
Tol!k
Берём папку "1" в корне диска. Получается 255 - x:\1\ - расширение
Зачем тут на 2 делить? |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Mon May 07, 2012 02:18 Post subject: |
|
|
так перемещаем же в _одноимённую_ с файлом папку.
не замечаешь \ в середине пути?
x:\ это совпадение длиной в 123 символа \ это совпадение длиной в 123 символа .ext
так понятнее?
а с папкой "1" может совпасть только 1.ext |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 02:25 Post subject: |
|
|
Tol!k wrote: | так понятнее? | Нет. Мы же не в одноимённую папку перемещаем. Длина имени и у файла и у папки может очень сильно разнится. Пример: 12аруеокнелнглнглнг4y35nesfsbq45yh4b\ - 12.txt, и наоборот. |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Mon May 07, 2012 02:31 Post subject: |
|
|
ОК, не в одноимённую.
В максимально длинную папку перемещаем максимально длинный файл, но чтобы без проблем в результате |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 07, 2012 02:43 Post subject: |
|
|
В имени папки - 150 символов, в одном файле - 5, в другом - 80. Проверяем по первым 3-м символам.
Деление на 2 тут неуместно. Выставлять каждый раз самое длинное имя папки/файла для каждого совпадения - лишние трудозатраты. Поэтому лучше задавать ограничение. Предлагаю на этом закончить обмен своими взглядами. |
|
Back to top |
|
|
|