JobaS Postado Novembro 24, 2008 Denunciar Share Postado Novembro 24, 2008 (editado) Bom pessoal,estou iniciando em VB e gostaria se alguém poderia mee ajudar como gerenciar bytes de um arquivo...o que preciso fazer é :O programa abre uma arquivo, ai no arquivo :a cada 30 bytes do arquivo deleta-se 2Exemplo : 424D 48A6 0E00 0000 0000 4600 0000 3800 0000 2003 0000 5802 0000 0100 1000 0300No caso o 0300 Serial deletado...alguém puder me dar dica ou um exemplo de como fazer isso vai me ajudar bastante.vlw Editado Novembro 24, 2008 por JobaS Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pandox Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 Faz um if para verificar a quantidade de Bytes quando chegar ao 30 você deleta o que tem que ser deletado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 você vai rescrever o arquivo certo?? vai somando uma variavel a cada byte, quando chegar em 30 você não salva no otro arquivo e zera o contador. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pandox Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 (editado) você quer dizer que vai precisar de uma variavel para cada Byte ?ou vai fazer um for para isso ? Editado Novembro 25, 2008 por Pandox Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 você quer dizer que vai precisar de uma variavel para cada Byte ?ou vai fazer um for para isso ?essa pergunta é pra mim ou pro jobas?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pandox Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 (risos), para você Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 hum entendi a pergunta. é seria uma variavel só. mas tipo... não necessariamente você faria um for pra cada byte. acho q você pode pegar num array direto. exemplo, você cria um array de 29 posicoes e pegava um pedaco de 29 bytes e punha no array. ai você lia mais dois byte (em um otro array qualquer) q corresponde a posicao 30 e não fazia nd com ele tudo dentro dum for.ou ainda, podia ler o arquivo todo de uma vez pra dentro de um array e na hora de gravar, ignorar as posicoes a cada 30 indices.porque tipo assim, você não pode deletar direto um pedaco do arquivo. você não vai conseguir escrever no hd, você não consegue alterar la um espaco q já ta definido, muito menos excluir uma parte. hum, seila, é coisa de nivel bem baxo, não entendo os detalhes, mas pelo menos imagino q o arquivo esteja la ocupando um espaco no hd continuamente (ou não, pode estar fragmentado tb, mas isso não vem ao caso agora). imagina q você exclua um pedaco qualquer do arquivo. vai ficar um buraco no meio, isso não existe, você teria q "puxar" o resto do arquivo pra tapar o buraco.a não ser q você fizesse isso direto em programacao de baxo nivel, acho q você não consegue, alem de q gastaria bem mais tempo caso o arquivo for bem gde.quem imagino q escreva direto em hd assim é programa de banco de dados. mas só o q ele faz é adicionar mais informacoes no arquivo, ou ainda alterar informacoes de dentro sem alterar o tamanho, não consegue arrancar pedaco de dentro.no caso aqui, o q você teria q fazer é reescrever todo o arquivo em um novo e substituir o velho. imagino q assim funcionem os softwares todos q criam arquivos como o word. você abre o arquivo e ele é carregado na memoria. quando você altera, você altera na memoria. quando você clica gravar ai sim, ele apaga o arquivo existente e cria um novo.ai o esquema no caso aqui então é simplesmente não escrever a parte q você não quer no novo arquivo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pandox Postado Novembro 25, 2008 Denunciar Share Postado Novembro 25, 2008 Jobas uma duvida, você sabera exatamente quantos Bytes ira ter esse arquivo ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JobaS Postado Novembro 26, 2008 Autor Denunciar Share Postado Novembro 26, 2008 não...eu tava precisando disso pra extrarir a parte RAW exata de um BMP de resolução impar...porque ele ao ser salvo no formato BMP 16 Bit R5G6B5 insere 2 bytes ( 00 00 ) itercalados no caso do meu arquivo esses byts ficam a cada 30...ai pra não precisar excluir isso manualmente , pois vo precisar fazer o processo varias vezes... precisava de um mini programinha pra isso...mas não tenho conhecimento em programação suficiente =/mesmo assim vlw ai a tentativa de ajudar... vou procurar ler mais um pouco pra ver se csgo desenvolver esse mini - projeto mas na NET so acho artigos que tratam de calculadora , software de controle essas coisas... consegui achar nada ainda que me ajudasse...se alguém souber algo que eu possa ler para quem sabe conseguir compilar um software pra isso vo agradecer.vlw Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
JobaS
Bom pessoal,
estou iniciando em VB e gostaria se alguém poderia mee ajudar como gerenciar bytes de um arquivo...
o que preciso fazer é :
O programa abre uma arquivo, ai no arquivo :
a cada 30 bytes do arquivo deleta-se 2
Exemplo : 424D 48A6 0E00 0000 0000 4600 0000 3800 0000 2003 0000 5802 0000 0100 1000 0300
No caso o 0300 Serial deletado...
alguém puder me dar dica ou um exemplo de como fazer isso vai me ajudar bastante.
vlw
Editado por JobaSLink para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados
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.