Enviar um café pro programador

Pode me ajudar a transformar cafeína em código?

Arquivos (Files) em Java

Neste tutorial de Java de nosso curso, vamos apresentar um conceito bem diferente de se trabalhar com dados, e sem dúvidas um dos mais importantes em programação Java.

Não é por menos que iremos dedicar uma seção inteira de nosso site para ensinar como usar arquivos (files), em Java.




O que são Arquivos em Java

Até o momento, em nossa Apostila Java Progressivo, vínhamos armazenando as informações em variáveis.
Inicialmente aprendemos a usar os vários tipos de variáveis, depois aprendemos a colocar tudo em Arrays, e por fim quando aprendemos ArrayList vimos a infinidade de possibilidade que o Java nos dá para organizar os elementos, inserir, tirar, achar, alterar e fazermos o que quisermos com objetos em um Array.

Porém, existe um problema nesses tipos de variáveis, nessas maneiras de armazenar e organizar informações: elas são temporárias.
Isso mesmo, quando seu programa termina, tudo o que você criou ou que foi computado pelo seu aplicativo Java irá se perder.

Imagine só, sempre que você desligar seu computador, perder todos os arquivos que você trabalhou/usou, todas as fotos, textos etc.
Sem condições, não é?
E é exatamente por isso que está faltando um 'algo a mais' em nosso aprendizado de Java!

No dia-a-dia, os programas que usamos, armazenam as informações de maneira permanente.
Você abre o aplicativo, usa, escolhe o que salva, o que não salva, fecha o programa e no outro dia quando for usar de novo, vai estar tudo lá.

É aí que entram os arquivos: eles são maneiras de armazenarmos informações de maneira permanente.
São os arquivos mesmo, que conhecemos, como um arquivo de texto (.txt, .doc), uma música (.mp3), um vídeo (.avi) ou uma foto que salvamos (.jpg).

Vamos aprender como criar arquivos, abrir um arquivo existente no seu computador, como ler suas informações, alterar e até mesmo apagar arquivos.



Para que estudar Arquivos em Java

Vamos voltar ao nosso clássico exemplo da empresa, daquela que você foi contratado para criar um sistema com os dados de cada funcionário da empresa.
Cada empregado é um objeto (da classe "Funcionário", por exemplo), com os dados de nome, endereço, telefone, salário, setor etc.

Você criou um sistema em que eles forneceram tais informações. Ok, e onde estas informações vão ficar?
Em ArrayList, no computador-servidor da empresa? Ok.
E se houver um problema? Faltar energia ou o servidor quebrar? Vai perder os dados?
Vai pedir para eles preencherem tudo de novo sempre que isso ocorrer?
E o registro de mudanças, contratações, demissões, promoção etc?
Onde vai guardar as informações sobre tudo isso.

Não há para onde correr: você deve armazenar essas informações de maneira permanente (além de ter que fazer um backup periodicamente em outros locais).

Sabe quando liga seu computador, com seu login e senha?
Como o computador sabe que aqueles dados estão certos? Ora, ele deve ter essa informação de login e da senha armazenadas em algum lugar em sua memória. Daí você entra com os dados, e seu sistema operacional vai lá checar se está ok.

E quando você vai jogar algum jogo no seu computador? Já reparou que sempre inicia exatamente de onde você parou? E isso acontece no computador, vídeo-game ou até naquele joguinho Java do seu celular.
E aí, o jogo adivinhou o que você fez no passado?
Óbvio que não, ele simplesmente foi armazenando tudo o que você fez em arquivos de seu computador.

E podemos ficar horas aqui explicando a importância dos arquivos, mas certamente já deu pra entender o mundo de novas coisas que podemos fazer com os arquivos.
O fato é que nossos programas irão se 'comunicar' com os computadores, abrir arquivos, alterar dados de um pendrive, se auto-duplicar, guardar senhas, apagar arquivos, fazer back-up e praticamente tudo o que você quiser.

A coisa está começando a ficar interessante, não?

5 comentários:

Dr.Network disse...

É assim que os vírus são criados?

Anônimo disse...

Olá Dr.Network,
Esse é o princípio dos vírus !

Unknown disse...

Parabéns pelo curso tô aprendendo muito!

Unknown disse...

E programar

Weslleyzitowsz disse...

Estude C primeiro. O Java é derivado do C e esta é uma linguagem muito legal de se aprender, além de que é importantíssima.
www.cprogressivo.net

Contribuir com o Java Progressivo

Que tal apoiar e fazer crescer o ensino da programação no Brasil ?

Ajudar nosso país a crescer e se desenvolver cada vez mais, tecnologicamente?

Clica abaixo pra saber mais!

Apoiar o Projeto Progressivo


Tutoriais de Java