Necessitava de uma pequena ajuda para um pequeno problema que me tem dado umas pequenas dores de cabeça. Então é assim.
Estou a correr um script que me pesquisa todos os ficheiros mp3 que se encontram em C:\ e grava o log num txt. Até aqui tudo bem. O que necessito é de separar os files para uma váriavel e os bytes para outra.
O problema aqui é que o log que é gerado não tem os espaços correctos entre a informação. Passo a explicar. O espaçamento da esquerda até ao numero de ficheiros vai diminuindo quando o numero sobe. O numero de bytes se for de apenas 4gb o espaçamento entre a palavra File(s) até ao numero é de 2 se o numero de bytes aumentar para 14gb o espaçamento passa para 1.
Question
rgaspar
Viva,
Necessitava de uma pequena ajuda para um pequeno problema que me tem dado umas pequenas dores de cabeça. Então é assim.
Estou a correr um script que me pesquisa todos os ficheiros mp3 que se encontram em C:\ e grava o log num txt. Até aqui tudo bem. O que necessito é de separar os files para uma váriavel e os bytes para outra.
O problema aqui é que o log que é gerado não tem os espaços correctos entre a informação. Passo a explicar. O espaçamento da esquerda até ao numero de ficheiros vai diminuindo quando o numero sobe. O numero de bytes se for de apenas 4gb o espaçamento entre a palavra File(s) até ao numero é de 2 se o numero de bytes aumentar para 14gb o espaçamento passa para 1.
Total Files Listed:
< 11 espaços >11305<1>File(s)<2>4.459.988.139<1>bytes
< 12 espaços >1305<1>File(s)<1>14.459.988.139<1>bytes
< 13 espaços >305<1>File(s)<1>114.459.988.139<1>bytes
Script para criar o log com a quantiadade de mp3 que tenho no meu pc:
Set objShell = CreateObject("Wscript.Shell")
objShell.Run "%comspec% /c c: & cd\ & dir /s /w *.mp3 >> C:\Dados\MusicPC.txt", 1, True
O script que estou a executar para retirar a informação que necessito é o seguinte:
Dim objFSO, objShell, objFile
Dim strFile, strLine, strTotalFiles, Flag
Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Wscript.Shell")
Set objFile = objFSO.OpenTextFile("C:\Dados\MusicPc.txt", 1)
Do Until objFile.AtEndOfStream
strLine = objFile.ReadLine
If Instr(strLine, "Total Files Listed:") Then
Flag = True
End If
If Flag = True Then
strTotalFiles = Trim(strLine)
strTotalFiles = Trim(objFile.ReadLine)
wscript.echo strTotalFiles
Flag = False
End If
Loop
objFile.Close
Output: 11305 File(s) 4.459.988.139 bytes
Como é que faço para ter apenas numa variavel o numero de files e numa outra variavel o numero de bytes. Exemplo
strVarFiles = 11305
strVarBytes = 4.459.988.139 ou 14.459.988.139 ou 114.459.988.139
Obrigado pela colaboração
Ricardo Gaspar
:unsure:
Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.