Скрипт для записи в HTML-файлы информации о файлах JPG
Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik
Под списком и понимались jpg. И тут речь идёт о записи размеров в теги html. И пока я так и не увидел ответ на исходный вопрос.
В любом случае реализацию на завтра уже переносим.
В любом случае реализацию на завтра уже переносим.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
А, ну тут просто.
i = i + 1 : .GetFile(F).Name = Fd.Self.Name & "_0" & i & "." & Ext
'.....
.OpenTextFile(Fd.Self.Name & "_0" & i & ".html", 2, True, -1).Write _
"<h1> " & Fd.Self.Name & "_0" & i & ".jpg </h1>" & vbNewLine & "height = <b> " & H &_
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
- Yurbanizator
- Сообщения: 26
- Зарегистрирован: Ср дек 13, 2006 22:44
Если добавляю в папку еще файлы и вызываю скрип, вылетает ошибка http://joxi.ru/EQ84Mf8
Необходимо, что бы добавленные файлы переименовывались продолжая нумерацию.
Если уже есть файлы 1 2 3 4, то новые файлы должны переименовываться в 5 и 6.jpg
Алгоритм работы скрипта:

Необходимо, что бы добавленные файлы переименовывались продолжая нумерацию.
Если уже есть файлы 1 2 3 4, то новые файлы должны переименовываться в 5 и 6.jpg
Алгоритм работы скрипта:

В памятке для кого написано?:Yurbanizator писал(а):Если добавляю в папку еще файлы и вызываю скрип, вылетает ошибка http://joxi.ru/EQ84Mf8
Код: Выделить всё
2) Приведите код ошибки, скопированный из вылетевшего окошка по Ctrl+C. Желательно оставить только необходимое (текст сообщения и строку ошибки).Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Flasher:
Правильно ли будет писать так:
If (Ext = "jpg" Or Ext = "jpeg") And Not IsNumeric(.GetBaseName(F)) Then
i = i + 1 : Do While .FileExists(Fd.Self.Name & "_" & i & "." & Ext ) : i = i + 1 : Loop
.GetFile(F).Name = Fd.Self.Name & "_" & i & "." & Ext
И вопрос: Почему при добавлении новых файлов счет начинается не с 1 номера?
Правильно ли будет писать так:
If (Ext = "jpg" Or Ext = "jpeg") And Not IsNumeric(.GetBaseName(F)) Then
i = i + 1 : Do While .FileExists(Fd.Self.Name & "_" & i & "." & Ext ) : i = i + 1 : Loop
.GetFile(F).Name = Fd.Self.Name & "_" & i & "." & Ext
И вопрос: Почему при добавлении новых файлов счет начинается не с 1 номера?
Нуля не хватает после знака подчёркивания.berya писал(а):Правильно ли будет писать так:
А как же ещё, если файл с таким именем уже существует? В этом-то и весь смысл.berya писал(а):Почему при добавлении новых файлов счет начинается не с 1 номера?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
нуль я убрал потому, что идет нумерация 01 ... 09 010, 011 ... вместо 01 ... 10, 11.
Под началом нумерации я имеел ввиду, что было abc_1 ... abc_10 - добавляю несколько файлов, запускаю скрипт и получаю abc_10 аbc_11 ... т.е. начало нумерации с номера последнего файла по счету который был до добвления новых фалов. Повторный запуск скрипта ставит нумерацию с 1
Под началом нумерации я имеел ввиду, что было abc_1 ... abc_10 - добавляю несколько файлов, запускаю скрипт и получаю abc_10 аbc_11 ... т.е. начало нумерации с номера последнего файла по счету который был до добвления новых фалов. Повторный запуск скрипта ставит нумерацию с 1
Условие наличия не менее двух знаков было выполнено, а так не будет.berya писал(а):нуль я убрал потому, что идет нумерация 01 ... 09 010, 011 ... вместо 01 ... 10, 11.
Именно так и запрашивал Yurbanizator.berya писал(а): т.е. начало нумерации с номера последнего файла по счету который был до добвления новых фалов
Тут ряд условий надо выполнить. В общем, меняем 9-20 строки исходника на эти:berya писал(а):Повторный запуск скрипта ставит нумерацию с 1
Код: Выделить всё
Items.Filter 64, "*.jpg" : PFix = Fd.Self.Name & "_"
With CreateObject("Scripting.FileSystemObject")
If Items.Count > 0 Then
For Each F In .GetFolder(Dir).Files
Ext = LCase(.GetExtensionName(F)) : BN = .GetBaseName(F) : UL = InStrRev(BN, "_") : Test = 0
If UL Then : If PFix = Left(BN, UL) Then Test = IsNumeric(Mid(BN, UL + 1)) : End If
If (Ext = "jpg" Or Ext = "jpeg") And Not Test Then
i = i + 1 : If i < 10 Then i = "0" & i
Do While .FileExists(PFix & i & ".jpg") Or .FileExists(PFix & i & ".jpeg")
i = i + 1 : If i < 10 Then i = "0" & i
Loop : .GetFile(F).Name = PFix & i & "." & Ext
Size = CStr(Fd.GetDetailsOf(Fd.ParseName(F.Name), 31))
x = InStr(Size, "x") : H = Left(Size, x - 2)
.OpenTextFile(PFix & i & ".html", 2, True, -1).Write _
"<h1> " & PFix & i & "." & Ext & " </h1>" & vbNewLine & "height = <b> " & H &_
Последний раз редактировалось Flasher Вс дек 16, 2012 18:12, всего редактировалось 4 раза.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Неправда. Не трогает только те, у которых есть число после знака подчёркивания, что для описанной задачи вполне логично.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Увы, ничем не могу помочь. Мои результаты положительные, как при добавлении, так и при переименовании jpg-файлов.
Добавлено спустя 13 минут:
Сделал ещё поточней проверку имён со знаком подчёркивания.
Добавлено спустя 13 минут:
Сделал ещё поточней проверку имён со знаком подчёркивания.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Надо ждать пока скрипт полностью отработает, а после уже повторно жать, иначе будет хаос.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.