Planeta Delphi - Dicas | Usando a classe tstream...

March 29, 2018 | Author: Francisco Barbosa | Category: Byte, Text File, Function (Mathematics), Java Script, Data


Comments



Description

Planeta Delphi - Dicas | Usando a classe tstream... http://www.planetadelphi.com.br/dica/905/usando-a-classe-tstream Buscar por: Fórum Cursos Contato Home | Apostilas| Artigos| Componentes| Dicas| Arquivos| Empregos | Cursos online 1 de 7 17/07/2017 08:16 planetadelphi. Java JEE/J2EE jQuery Javascript Javascript Crossbr..br/dica/905/usando-a-classe-tstream Usuários Login Incluir Dica Incluir Arquivo Esqueceu a senha? Cadastre-se 73 usuários online Empregos Incluir Vaga Visualizar Vagas Geral Cursos Online Fórum Delphi Cursos Online Delphi 2009 MySQL Acessibilidade Web Ajax Ajax Avançado CSS C Sharp / C# DHTML Adobe Flex 3 HTML Internet Móvel Java J2SE Java JEE/J2EE Avan.O. http://www. Lógica de Prog.Dicas | Usando a classe tstream. Microformats PHP Básico PHP Avançado PHP e Segurança Postgree SQL SEO Tableless Usabilidade Web XHTML XSL / XSLT XML 2 de 7 17/07/2017 08:16 . Lógica de Prog.Planeta Delphi .com. O.. Podem ser usadas uma das três opções abaixo: soFromBeginning: indica que a posição deve ser movida a partir do inicio ou seja. soFromCurrent:: indica que deve movido a partir da posição atual. Então o valor do Offset deverá ser 3 de 7 17/07/2017 08:16 .Position:= 25. existem outras mas nós vamos falar somente destas.Size > 0 then Stream1. só será possível ler os últimos 2 bytes.com.Planeta Delphi .Indica o número de bytes vamos mover a posição. A variável MeuByte deve conter o valor do primeiro byte do stream que será um número entre 0 e 255.Write(MeuByte. maior que zero.SizeOf(MeuByte)). deve-se levar em consideração a propriedade Position para saber onde serão gravados os dados.planetadelphi.SizeOf(MeuByte)). Copiando dados de um stream para outro: A classe TStream tem uma função chamada CopyFrom que serve para copiar um determinado número de bytes de outro stream. Por exemplo: Se o tamanho (Size) do stream é 5 bytes e a posição (position) é 3. se o Stream2 tiver menos de 275 byte a função CopyFrom vai copiar todos os bytes que puder e retornar o número de bytes que foram copiados. Como a classe TStream é uma base ela não pode ser utilizada diretamente. end. Stream1. begin MeuByte:= 23. http://www. } var MeuByte: byte. {No exemplo acima nós mudamos o valor da variável MeuByte para 23 e a função Write gravou o número 23 no stream ocupando 1 byte de espaço na memória e também somou 1 a posição atual. Origin: Word): Longint. begin Stream1.250). Stream1. esta função retorna o número de bytes que foram lidos. } begin Stream2. Note que usamos a função SizeOf para saber o tamanho da variável MeuByte mas nós poderíamos ter colocado 1 no lugar de SizeOf porque variáveis do tipo byte tem o tamanho de 1 byte. Outra coisa que deve ser verificada é a propriedade position para saber posição do stream. Usando a função Seek: Até agora nós usamos a propriedade Position para mudar a posição do stream mas também podemos utilizar a função Seek que tem algumas opções que facilitam nossa programação. function Seek(Offset: Longint. A função Seek tem dois parâmetros: Offset . {A função CopyFrom pegou 250 bytes a partir da posição 25 do Stream2 e copiou para o Stream1.. Como gravar dados no TStream: Para gravar dados nós utilizamos a função Write. Neste exemplo nós não verificamos se o Stream2 tem 275 bytes de tamanho para que fossem copiados os 250 bytes. Origin .Dicas | Usando a classe tstream.CopyFrom(Stream2.Especifica a partir de onde deve ser movido. se a posição for igual ao tamanho do stream (Position = Size) a função vai adicionar os novos dados aos já existentes e aumentar o tamanho do stream. end. será necessário usar uma classe descendente como TFileStream ou TMemoryStream.br/dica/905/usando-a-classe-tstream Usando a classe tstream Código {Usando a classe TStream: A classe TStream é uma base para componentes que trabalham com dados acumulados em forma de bytes. {Veja que neste exemplo foi declarado a variável MeuByte do tipo byte para servir de reservatório. end. a posição foi movida para zero e foi verificado o tamanho do stream e a função Read pegou 1 byte do stream copiou para a variável MeuByte alem disso a função Read também mudou a posição para 1 e retornou o numero 1 que indica que foi copiado 1 byte. if Stream1. isto também vale para função Read. ? } var MeuByte: byte. Para ler os bytes use a função Read.Read(MeuByte. Como ler dados usando o TStream: Para ter acesso aos dados de um TStream em primeiro lugar deve ser verificada a propriedade Size para saber se o stream não está vazio ou seja. da posição zero. se a posição for 0 a função Write vai sobrepor os dados do stream..Position:= 0. (Position + Offset) soFromEnd: indica que deve ser movido a partir do fim. O parâmetro Mode vai definir como será usado o arquivo. end.soFromEnd). Exemplo geral para abrir e ler um arquivo: } var Arquivo: TFileStream.DelphiBinbrcc32.      Crie uma pasta no seu HD com um nome amigável. Exemplo: "C:MP3 ResMp3Res.bat'. DICA: No tópico 5 você pode criar na pasta um atalho para o Brcc32.. Usando o TFileStream: O TFileStream é o descendente do TStream usado para manipular arquivos.Create('c:Autoexec. Inserindo arquivos dentro do aplicativo: Provavelmente você já deve conhecer os arquivos de recursos(. } begin Stream1. Midi e qualquer outro formato e também é possível por qualquer outro arquivo até mesmo outro Aplicativo.br/dica/905/usando-a-classe-tstream negativo para não haver erro. O método Create é um pouco diferente dos outros. Exemplo 'Mp3Res.exe C:MP3 ResMp3Res.      Neste arquivo de texto digite um nome que será usado como referência para o arquivo. ícones e cursores e que podem ser criados pelo Image Editor do próprio Delphi.19]of Char.      Crie um arquivo de texto(.RES} {9. 6. {Neste exemplo nós abrimos o Autoexec. Como inserir os arquivos? 1. Texto: array[0. {Neste exemplo nós voltamos 25 bytes na posição a partir do fim. podemos usar as seguintes opções: fmCreate: para criar um novo arquivo.      Copie este arquivo para a pasta onde está o projeto. Exemplo 'Mp3Res. 2. 4. Arquvo.. Mode: Word). SizeOf(Texto)). se o tamanho do Stream1 for de 100 bytes a posição atual será 75. OBS. dê outro espaço e digite o nome real do arquivo com a exetensão.      Compile o arquivo de texto usando o Brcc32.      O Brcc32 vai gerar um arquivo de recursos com o mesmo nome do arquivo de texto.txt) nessa pasta.      Agora no Delphi abra o projeto que você deseja inserir o arquivo de recursos.com. 5.. Pronto para compilar o arquivo dê um clique duplo no atalho. a diferença mais importante é a alta velocidade no acesso aos dados e o MemoryStream também tem a capacidade de abrir e salvar arquivos através das funções LoadFromFile e SaveToFile. http://www.res) que são usados por seu aplicativo para acessar bitmaps. para outro arquivo digite na linha seguinte. ler e gravar dados no arquivo. Como usar os arquivos? Abaixo está o procedimento que vamos usar para extrair o Rock.mp3 e grava-lo no disco. 7.MP3 ). Por exemplo 'C:MP3 Res'. 8.Free. Arquivo.Seek(-25.bat e copiamos os 20 primeiros caracteres para a variável Texto.exe(no diretório DelphiBin) por linha de comando.      Copie todos os arquivos que deseja inserir em seu arquivo de recursos. click no menu Projects | View Source e digite {$R Mp3Res. o que está aqui é só uma pequena parte.     Pronto agora é só Compilar o projeto e os arquivos vão estar dentro do aplicativo. dê um espaço e digite a classificação de tipo do arquivo por exemplo(WAVFILE para Arquivos de som Wave).txt". Acho que já deu para ter uma idéia de como funciona um TStream. depois dê um clique com o botão esquerdo do mouse sobre o arquivo de atalho e clique em 'Propriedades'.fmOpenRead). consulte a ajuda do Delphi e veja outros componentes descendentes do TStream tenho certeza que será de grande ajuda em seus futuros projetos.exe" dê um espaço e digite entre aspas duplas o nome do arquivo de texto que você criou com o caminho completo.planetadelphi. constructor Create(const FileName: string.Dicas | Usando a classe tstream.: Se for colocar muitos arquivos como em programas de instalação é recomendável compactar os arquivos antes de criar o arquivo de recursos.RES'. O TMemoryStream: O MemoryStream é usado para manipular dados na memória. Exemplo geral( SOM_ROCK MP3FILE ROCK. fmOpenReadWrite: para abrir.. Exemplo: Brcc32. 3. Para criar um TFileStream devemos informar o nome do arquivo desde a letra da unidade de disco incluindo pastas e sub-pastas até a extensão mesmo que este arquivo não exista. end.. begin 4 de 7 17/07/2017 08:16 .Planeta Delphi . var Arq: TResourceStream. begin Arquivo:= TFileStream. fmOpenRead: para abrir e apenas ler os dados do arquivo fmOpenWrite: para abrir e apenas gravar dados no arquivo. no campo objeto depois do "C:. isto faz com que os dados atuais do arquivo sejam completamente apagados.Read(Texto. Mas estes arquivos não servem apenas para isso você pode inserir outros arquivos como os de som Mp3.txt.} procedure ExtraiArq. Wave.txt'. Create(HInstance.br/dica/905/usando-a-classe-tstream Arq:= TResourceStream. end.Free. http://www. end..com.SaveToFile('Rock.mp3'). try Arq. 'SOM_ROCK'.planetadelphi.}   Publicidade Vote na dica 1 2 3 4 5 Quantidade de votos: 0 votos Aceitação: 0% Detalhes da dica Categoria: Arquivos Adicionada dia: 25/08/03 Por: Joaquim Estevam De Araújo Neto Visualizada: 33413 vezes Últimos comentários Visualizar próximos 5 comentários como posso pegar uma string base64 e mostrar a imagem q veio dela no timage usando o conceito de stream como posso pegar uma imagem que veio em uma string base64 e mostrar em um Timage? 5 de 7 17/07/2017 08:16 . finally Arq.Dicas | Usando a classe tstream.Planeta Delphi .: Se os arquivos estiverem compactados inclua o algoritmo de descompactação antes de salvar o arquivo.. {OBS. 'MP3FILE'). Planeta Delphi .com. valeu Por: Michel Da Silva em 20/04/2004 às 18:23:07 bem interessante Dica muito legal. COLUNISTAS Rubens Antunes 13 artigo(s) Exio 13 artigo(s) Eder Rueda Fernandes 11 artigo(s) João Sakalauska 8 artigo(s) Eneias Carvalho 6 artigo(s) Kennedy Parreira 6 artigo(s) 6 de 7 17/07/2017 08:16 .Dicas | Usando a classe tstream. vlw Por: Asdljhasjdhas em 20/04/2004 às 18:23:07 Poste seu comentário Título Precisa estar logado .... http://www. não sabia da existência deste recurso...Parabéns Por: Jorge Amir Hereibi em 14/08/2016 às 12:03:55 parabens isto sim é contribuição.. uma verdadeira aula...planetadelphi.. valeu Por: Michel Da Silva em 20/04/2004 às 18:23:07 parabens isto sim é contribuição.. Comentário Precisa estar logado .br/dica/905/usando-a-classe-tstream Por: Mauricio Marcelo Paiva De Abreu em 09/03/2017 às 09:24:42 Usando a classe TStream Muito bom. Dicas | Usando a classe tstream.com.www.planetadelphi.Todos os direitos reservados | Copyright 2001-2009 7 de 7 17/07/2017 08:16 .Planeta Delphi ..planetadelphi.br/dica/905/usando-a-classe-tstream Wiliam Zacarias 4 artigo(s) Andreano Lanusse 3 artigo(s) Jakson Wendt 3 artigo(s) Expedito Cordeiro 2 artigo(s) Jose Bernardo 2 artigo(s) Sérgio 2 artigo(s) Publicidade Enquete O que achou do novo site? Excelente Bom Ruim Votar Resultado Validações Planeta Delphi ..com.br . http://www. Documents Similar To Planeta Delphi - Dicas | Usando a classe tstream...Skip carouselcarousel previouscarousel nextProgramação em BatchO que são bits e bytes_5d6fad55-Ea8d-4954-959c-5fa707de8c0dPowerNET M200 Manual Programação P (1)ATP_Aula_05Software AplicativosBatch Input e SHDB08450ManualComandosdeOMMMLEdJan2007Como Criar Um Arquivo Txt Delimitado Por Tamanho Do Campo Ou Espaçamento No Excel - Artigos TechNet - Brasil (Português) - TechNet WikiRoteiro de Uso Do InstallshieldManual de Orientação CBICcapitulo_14.pdfAprendendo a Manipular Arquivos12 - Stream de Entrada e Saída de Dados (IO) AvançadosTp Extra1447706127_74575_unidades_de_medida.pdfAula 01 Redes de ComputadoresConfira 20 Dicas e Truques Extremamente Úteis Do .HTACCESSSite Para Trans for Mar PDF Em DocChasrp - Escrever Em Txt1. Memórias.pptxNFe-Layout-Emitidas-Recebidas-v2-2[1]comandos mdosConhecendo o Civil 3DComo Converter Arquivos Em PDF Para DocIntrodução bachtSigaeicComandosno WindowsAdvancedinstaller.com-fontfontCriando Hum Pacote MSI SimplesfontfontFIS_SPED_PIS_COFINS_BRA.pdfComandos Do MS-DOSMore From Francisco BarbosaSkip carouselcarousel previouscarousel nextNT2014.002_v1.02_WsNFeDistribuicaoDFe.pdfDelphi Basics _ SelectDirectory Commandlivro pfsense 2.0 pt_br.pdfMontar TreeView Usando Um DataSetInstalação e configuração modemConfigurações leitor LI4278.pdfQuick Tips_ Trabalhando Com Objeto No TreeView - Parte IIConfigurações leitor LI4278Teste Mais Uma VezLer Blob Do Banco Com FastReport Clube Delphi 094Artigostutorial_ospf_radius_ixcprovedor.pdfQuick Tips_ Trabalhando Com Objeto No TreeView - Parte IQuick Tips_ Trabalhando Com Objeto No TreeView - Parte IIIpostgreSQL_pratico.pdfrecuperar imagens no banco de dadosalgaworks-livreto-desmistificando-rest-com-java-v1.1.pdfGuia de Componentes - Delphi XE1PostgreSQL_Pratico.pdfCurso de InglêsCurso de InglêsAbrir Form DLL usando LoadLibrary - Fórum DevMediaConvertendo string para um Objeto ( Só para os Feras )DelphiSynch.pdfintelbras_isic_para_android_.pdfCurso de InglêsTabela_NCM.pdfedital STJFooter MenuBack To TopAboutAbout ScribdPressOur blogJoin our team!Contact UsJoin todayInvite FriendsGiftsLegalTermsPrivacyCopyrightSupportHelp / FAQAccessibilityPurchase helpAdChoicesPublishersSocial MediaCopyright © 2018 Scribd Inc. .Browse Books.Site Directory.Site Language: English中文EspañolالعربيةPortuguês日本語DeutschFrançaisTurkceРусский языкTiếng việtJęzyk polskiBahasa indonesiaSign up to vote on this titleUsefulNot usefulYou're Reading a Free PreviewDownloadClose DialogAre you sure?This action might not be possible to undo. Are you sure you want to continue?CANCELOK
Copyright © 2024 DOKUMEN.SITE Inc.