COMO APAGAR UMA LINHA EM UM ARQUIVO .DAT?

SOADRAGON 07/08/2012 19:01:51
#407452
Estou a trabalho de um sistema para estudo, com DataGrid, auto-complete com a seta, auto-complete com um listbox e etc. Mais acabei encontrando um problema, ele funciona da seguinte forma, toda vez que o usuário incluír um item na tabela o sistema salva o nome do item em um arquivos [Ô].dat[Ô] e a marca em outro [Ô].dat[Ô], e assim que o usuário digitar na textbox a primeira letra de um item ele completa a textbox com a possível opção e ao apertar a seta para direita ele completa a text. Até ai tudo bem, mais agora vem o problema, se o usuário excluír o item como posso apagar a linha referente a aquele item no arquivo [Ô].dat[Ô]? Pesquisei bastante sobre isso mais não achei nada que pudese esclarecer minha dúvida, se vocês puderem me ajudar agradeceria muito.
MARCELO.TREZE 07/08/2012 19:19:53
#407453
bom um arquivo dat pode ser tratado como um arquivo texto então se vc tiver uma string para usar como base poderia fazer assim


Private Sub Command1_Click()
Dim PathName As String, Excluir As String
Dim InLine As String, TempFile As String
Dim F As Integer, F2 As Integer

PathName = [Ô]c:\seuarquivo.dat[Ô]
TempFile = App.Path & Format(Time, [Ô]hhnnss[Ô]) & [Ô].TMP[Ô] [ô] arquivo temporário
F = FreeFile
Open PathName For Input As #F
F2 = FreeFile
Open TempFile For Output As #F2
Do While Not EOF(F)
Line Input #F, InLine
Excluir = [Ô]aqui voce coloca o texto que deseja excluir[Ô]
If Excluir <> InLine Then
Print #F2, InLine
End If
Loop
Close #F
Close #F2
[ô]
[ô] Troca o arquivo antigo pelo novo
[ô]
Kill PathName
Name TempFile As PathName
End Sub



tente ai

SOADRAGON 07/08/2012 19:32:29
#407454
Cara eu estava querendo isso há uma mês, pesquisando na internet e não achava nada e você resolveu meu problema em minutos. Muito Obrigado, testei e funcionou de boa agora é só adaptar o código para o que quero.
MARCELO.TREZE 07/08/2012 20:37:07
#407457
disponha colega, se tiver mais alguma duvida é só perguntar

Tópico encerrado , respostas não são mais permitidas