terça-feira, 15 de novembro de 2011

Android: Gravando Arquivos na Memória Interna

Para gravar arquivos na memória interna de um aparelho com Android, primeiro deve chamar o método openFileOutput da classe Context. Ela retornará um objeto FileOutputStream que permitirá escrever no arquivo. O método possui dois argumentos: o primeiro é uma String que levará o nome do arquivo que será modificado. O segundo argumento é o modo de operação, que possui os seguintes modos:

  • Context.MODE_PRIVATE: Modo padrão, o arquivo tem acesso privado para o aplicativo. Outros aplicativos não poderão ler.
  • Context.MODE_APPEND: Os dados serão gravados no final do arquivo já existente.
  • Context.MODE_WORLD_READABLE: O arquivo permite o acesso para leitura para outros aplicativos.
  • Context.MODE_WORLD_WRITEABLE: O arquivo permite que outros aplicativos escrevam nele.
No objeto FileOutputStream, utiliza o método write para escrever o arquivo. Existem três métodos write, mas varia apenas os argumentos. Geralmente os dados vem em um formato de Array de bytes.
  • write(byte[] dados): Grava todo os dados do Array.
  • write(byte[] dados, int posicaoInicial, int qtdBytes): Grava uma certa quantidade os dados do Array partindo da posição inicial.
  • write(int oneByte): Grava 1 byte no arquivo. Ele grava somente os bits menos significativos. E não tenho a menor ideia para que vou usar isso.
Depois de gravar, fecha-se o FileOutputStream usando o método close.
Exemplo de um código para gravar:
FileOutputStream stream = openFileOutput(FILENAME, Context.MODE_PRIVATE);
stream.write(bytes);
stream.close();

Nenhum comentário:

Postar um comentário