ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Deletar partes de strings

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
init.delphi
Novato
Novato


Registrado: Quarta-Feira, 21 de Julho de 2010
Mensagens: 2

MensagemEnviada: Qua Jul 21, 2010 3:53 pm    Assunto: Deletar partes de strings Responder com Citação

Salve pessoal!

Sou iniciante em programação e consequentemente em Delphi e me deparei com um probleminha (para mim, problemão) solicitado pelo cara que cuida dos servidores aqui da empresa.
Ele possui um arquivo .txt com quase 20.000 linhas contendo links de sites bloqueados no proxy, e algumas contem comentários após o link, como:

www.exemplo1.com.br #site de spam
www.exemplo2.com.br #site de virus

e como os servidores estão sendo trocados de S.O., ele necessita deste mesmo arquivo sem os comentários após os sites, ou seja, seguindo o exemplo, o novo arquivo deverá ficar:

www.exemplo1.com.br
www.exemplo2.com.br

então resumindo, preciso fazer um programa que leia linha por linha deste arquivo e apague tudo a partir do "#".
e sendo sincero, mal sei como começar a fazer =/
alguém, por gentileza, poderia me dar um auxilio?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Devwave
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 31 de Mai de 2010
Mensagens: 146

MensagemEnviada: Qua Jul 21, 2010 5:47 pm    Assunto: Responder com Citação

Coloque um TMemo no form e no evento OnCreate do Form coloque este código:
Código:

procedure TForm1.FormCreate(Sender: TObject);
var
  l: Integer;
  s: String;
begin
  Memo1.Lines.LoadFromFile('nomedoarquivo.txt');
  for l := 0 to Memo1.Lines.Count - 1 do
  begin
    s := Memo1.Lines[l];
    Delete(s, Pos(' #', s), Length(s));
    Memo1.Lines[l] := s;
  end;
  Memo1.Lines.SaveToFile('nomedoarquivo1.txt');
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
gilsonnrodrigues
Moderador
Moderador


Registrado: Quinta-Feira, 14 de Abril de 2005
Mensagens: 9009
Localização: Governador Valadares-MG

MensagemEnviada: Qua Jul 21, 2010 6:17 pm    Assunto: Responder com Citação

Código:
var
  List : TStringList;
  I, P : Integer;
begin
  List := TStringList.Create;
  try
    List.LoadFromFile('Caminho do seu arquivo');
    for I := 0 to List.Count - 1 do
    begin
      P := Pos('#', List[I]);
      if P > 0 then
        List[I] := Copy(List[I], 1, P - 1);
    end;
    List.SaveToFile('Caminho da copia do seu arquivo');
  finally
    List.Free;
  end;
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
init.delphi
Novato
Novato


Registrado: Quarta-Feira, 21 de Julho de 2010
Mensagens: 2

MensagemEnviada: Seg Jul 26, 2010 9:50 am    Assunto: Responder com Citação

Gilsonnrodrigues e Devwave, muitíssimo obrigado!! Ambos os códigos funcionam perfeitamente!!!!

Atenciosamente,
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB