Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Скрипт для записи в HTML-файлы информации о файлах JPG
Goto page Previous  1, 2, 3, 4, 5  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Dec 12, 2012 00:51    Post subject: Reply with quote

Под списком и понимались jpg. И тут речь идёт о записи размеров в теги html. И пока я так и не увидел ответ на исходный вопрос.
В любом случае реализацию на завтра уже переносим.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
berya



Joined: 15 Nov 2011
Posts: 46
Location: kiev

Post (Separately) Posted: Wed Dec 12, 2012 00:55    Post subject: Reply with quote

имена меняем и для HTML и в HTML
Спасибо и спокойной ночи
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Dec 12, 2012 12:48    Post subject: Reply with quote

А, ну тут просто.

Quote:
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) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Yurbanizator



Joined: 13 Dec 2006
Posts: 26

Post (Separately) Posted: Sat Dec 15, 2012 18:11    Post subject: Reply with quote

Если добавляю в папку еще файлы и вызываю скрип, вылетает ошибка http://joxi.ru/EQ84Mf8

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

Алгоритм работы скрипта:
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sat Dec 15, 2012 20:52    Post subject: Reply with quote

Yurbanizator wrote:
Если добавляю в папку еще файлы и вызываю скрип, вылетает ошибка http://joxi.ru/EQ84Mf8
В памятке для кого написано?:
Code:
2) Приведите код ошибки, скопированный из вылетевшего окошка по Ctrl+C. Желательно оставить только необходимое (текст сообщения и строку ошибки).


Алгоритмы можно оставить для институтской профессуры Wink , а тут и так понятно, о чём речь. Исходник дополнен.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
berya



Joined: 15 Nov 2011
Posts: 46
Location: kiev

Post (Separately) Posted: Sat Dec 15, 2012 22:32    Post subject: Reply with quote

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 номера?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sat Dec 15, 2012 23:25    Post subject: Reply with quote

berya wrote:
Правильно ли будет писать так:
Нуля не хватает после знака подчёркивания.
berya wrote:
Почему при добавлении новых файлов счет начинается не с 1 номера?
А как же ещё, если файл с таким именем уже существует? В этом-то и весь смысл.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
berya



Joined: 15 Nov 2011
Posts: 46
Location: kiev

Post (Separately) Posted: Sat Dec 15, 2012 23:34    Post subject: Reply with quote

нуль я убрал потому, что идет нумерация 01 ... 09 010, 011 ... вместо 01 ... 10, 11.
Под началом нумерации я имеел ввиду, что было abc_1 ... abc_10 - добавляю несколько файлов, запускаю скрипт и получаю abc_10 аbc_11 ... т.е. начало нумерации с номера последнего файла по счету который был до добвления новых фалов. Повторный запуск скрипта ставит нумерацию с 1
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 00:37    Post subject: Reply with quote

berya wrote:
нуль я убрал потому, что идет нумерация 01 ... 09 010, 011 ... вместо 01 ... 10, 11.
Условие наличия не менее двух знаков было выполнено, а так не будет.

berya wrote:
т.е. начало нумерации с номера последнего файла по счету который был до добвления новых фалов
Именно так и запрашивал Yurbanizator.

berya wrote:
Повторный запуск скрипта ставит нумерацию с 1
Тут ряд условий надо выполнить. В общем, меняем 9-20 строки исходника на эти:
Code:
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 &_

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Sun Dec 16, 2012 18:12; edited 4 times in total
Back to top
View user's profile Send private message
berya



Joined: 15 Nov 2011
Posts: 46
Location: kiev

Post (Separately) Posted: Sun Dec 16, 2012 00:45    Post subject: Reply with quote

не переименновывает добавленные файлы
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 00:47    Post subject: Reply with quote

Неправда. Не трогает только те, у которых есть число после знака подчёркивания, что для описанной задачи вполне логично.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
berya



Joined: 15 Nov 2011
Posts: 46
Location: kiev

Post (Separately) Posted: Sun Dec 16, 2012 00:51    Post subject: Reply with quote

к сожалению, правда. специально переименовал фалы только с буквенными именами - никакой реакции
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 00:53    Post subject: Reply with quote

Увы, ничем не могу помочь. Мои результаты положительные, как при добавлении, так и при переименовании jpg-файлов.

Добавлено спустя 13 минут:

Сделал ещё поточней проверку имён со знаком подчёркивания.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
berya



Joined: 15 Nov 2011
Posts: 46
Location: kiev

Post (Separately) Posted: Sun Dec 16, 2012 01:22    Post subject: Reply with quote

Переименовывать стал, но результаты непредсказуемые - каждое нажатие новый набор нумерации, без какай - либо системы
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 16, 2012 01:24    Post subject: Reply with quote

Надо ждать пока скрипт полностью отработает, а после уже повторно жать, иначе будет хаос.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4, 5  Next
Page 2 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group