Ir para conteúdo
Fórum Script Brasil
  • 0

(RESOLVIDO) Qual a Menor Data?


Douglas Soares

Pergunta

Olá pessoal, tenho um programa que envia arquivos de backup para um ftp, e o nome deses arquivos são sempre a data do dia + backup.zip, então o limite de backups é 2 que podem estar no ftp, dai eu pretendo fazer o seguinte:

Quando tiver 2 backups já eu vo carregar o terceiro, e dps eu mando pra um listbox todos os arquivos no diretorio fdp, em seguida eu queria saber qual desses 3 arquivos tem a menor data no nome do arquivo.... sabendo disse eu irei deletar do ftp e boa... ehehee, por favor me deem uma luz!

Abraços

Editado por Douglas_Soares
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Pessoal por favor me ajudem, como virou o mes, fui fazer o backup, porem ele da erro, porque ele vai no site e emvez de deletar o que tem a menor data, deleta o arquivo que acabei de enviar, pois o arquivo que enviei se chama, backup01082009.zip, e os outros 2 arquivos que estavão no ar se chamam, backup28072009.zip e backup27072009.zip, dai quando o listbox deu o sorted = true, ele orgazinou por nome, e não pela data...... por favor alguém me ajuda organizar esse listbox por data!!!!, mt obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0
Pessoal por favor me ajudem, como virou o mes, fui fazer o backup, porem ele da erro, porque ele vai no site e emvez de deletar o que tem a menor data, deleta o arquivo que acabei de enviar, pois o arquivo que enviei se chama, backup01082009.zip, e os outros 2 arquivos que estavão no ar se chamam, backup28072009.zip e backup27072009.zip, dai quando o listbox deu o sorted = true, ele orgazinou por nome, e não pela data...... por favor alguém me ajuda organizar esse listbox por data!!!!, mt obrigado!

vou te passar a lógica do negocio

1 - criar um array de string

2 - retirar a parte numeria da string ( backup01082009.zip => 01082009 )

3 - inserir as barras nesta string para virarem datas validas ( 01/08/2009 )

4 - ordenar o array de datas ( tipo strings )

5 - montar novamente o ListBox com a nova sequencia ordenada dos arrays tirando as barras e vontando a string original

exemplo:

leitura dos itens jogados no array :

backup28072009.zip

backup27072009.zip

backup01082009.zip

dentro do array :

28/07/2009

27/07/2009

01/08/2009

ordenado e inserido a parte faltante da string:

backup01082009.zip

backup28072009.zip

backup27072009.zip

Veja se consegue fazer

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Vlw Jhonas vou tentar fazer isso... ehehe... é meu primeiro array.... mas você deu o caminho das pedras... espero conseguir.....

e você daniel vlw tambem pela resposta, mas não posso mudar o nome pois o sistema já tem esse nome no backup faz uns 5 anos ou mais, e eu não posso mudar de uma hora pra outra... eheheh eu trabalho aqui.... num posso fazer tudo que queria, rsrsrs.

Abraços

___________________________________________________________________________

editando....

buaaaaa, descobri que num sei faze array, hauhuhahua, se alguém puder me ajudar, disculpem pela minha ignorancia... eu so amador nisso, ehehheeh

Abraços

Editado por Douglas_Soares
Link para o comentário
Compartilhar em outros sites

  • 0
buaaaaa, descobri que num sei faze array, hauhuhahua, se alguém puder me ajudar, disculpem pela minha ignorancia... eu so amador nisso, ehehheeh

Já imaginava que voce não ia conseguir .... vou te dar uma colher de chá ... não uma de sopa ...não melhor uma de pegar feijão ..rs

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  datas: array of string; //vetor de string

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
  valor, s: string;
  indice: Integer;
  ok: Boolean;
begin
  //aloca espaço para os itens no vetor
  SetLength(datas,ListBox1.Items.Count);

  // retira parte da string e converte para data
  for i := 0 to ListBox1.Items.Count -1 do
    begin
       s := copy(ListBox1.Items.Strings[i],7,8);
       insert('/',s,3);
       insert('/',s,6);
       datas[i] := 'backup'+(formatdatetime('dd/mm/yyyy',strtodate(s)))+'.zip';
    end;

  // faz a ordenação
  repeat
    ok := False;
    indice := 0;
    repeat
      if CompareStr(datas[indice], datas[indice + 1]) = 2 then
      begin
        valor := datas[indice];
        datas[indice] := datas[indice + 1];
        datas[indice + 1] := valor;
        ok := True;
      end;
      Inc(indice);
    until(indice > High(datas));
  until(ok = False);
  // fim ordenação

  // exibe o array ordenado no proprio listbox
  ListBox1.Clear;
  for i := Low(datas) to High(datas) do
     begin
        delete(datas[i],9,1);
        delete(datas[i],11,1);
        ListBox1.Items.Append(datas[i]);
     end;
end;

end.

OBS: Procure sempre usar a cabeça para tentar descobrir como fazer ( leia tudo o que puder a respeito e pratique sempre no computador )

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...