Beruflich Dokumente
Kultur Dokumente
Manipulao
de
Arquivos
em
Java
Jefferson Ferreira Barbosa
jeffersonjpa@gmail.com
Joo Pessoa
2014
Obje8vos
Arquivos
Problema
que
Nosso programa
precisa se
comunicar com
o mundo
exterior!
Arquivos
Arquivos
Arquivos
Introduo
Para
resolver
esse
problema
de
comunicao
(entrada
e
sada
de
dados)
Java
disponibiliza
uma
biblioteca
As
classes
dessa
biblioteca
podem
ser
encontradas
no
pacote
java.io
Nesta
aula
teremos
apenas
uma
viso
geral,
mais
detalhes
podem
ser
encontrados
na
documentao
da
linguagem
(javadoc).
Arquivos
Classe
File
A
classe
File
uma
classe
u8litria
para
manipulao
de
arquivos
e
diretrios
Ateno:
apesar
do
nome
dessa
classe
ser
File,
os
objetos
criados
podem
representar
um
arquivo
ou
um
diretrio.
Arquivos
Classe
File
Alguns
construtores:
File(String):
cria
um
objeto
do
8po
File
que
representa
o
arquivo
ou
diretrio
especicado.
File(String, String):
cria
um
objeto
do
8po
File
que
representa
um
arquivo.
O
diretrio
onde
o
arquivo
se
encontra
informado
no
primeiro
parmetro.
O
nome
do
arquivo
informado
no
segundo
parmetro.
Arquivos
Classe
File
Alguns
construtores:
File(File, String):
cria
um
objeto
do
8po
File
que
representa
um
arquivo.
O
diretrio
onde
o
arquivo
se
encontra
informado
no
primeiro
parmetro.
O
nome
do
arquivo
informado
no
segundo
parmetro.
Classe
File
Alguns
mtodos:
boolean isDirectory()
-
informa
se
o
objeto
representa
um
diretrio.
boolean isFile()
-
informa
se
o
objeto
representa
um
arquivo
normal.
String[] list()
-
retorna
um
array
contendo
os
nomes
dos
arquivos
e
sub-diretrios
de
um
objeto
do
8po
File
que
representa
um
diretrio.
File[] listFiles()
-
retorna
um
array
de
objetos
File,
um
para
cada
arquivo
ou
sub-diretrio.
Arquivos
10
Classe
File
Alguns
mtodos:
boolean exists()
informa
se
o
arquivo
ou
diretrio
existe
long length()
tamanho
do
arquivo
em
bytes
boolean mkdir()
cria
um
sub-diretrio
boolean createNewFile()
cria
um
novo
arquivo
(caso
ainda
no
exista)
de
acordo
com
o
diretrio
e
o
nome
informados
na
instanciao
do
objeto.
boolean delete()
apaga
o
arquivo
ou
o
diretrio
Arquivos
11
Classe File
Arquivos
12
Classe File
Arquivos
13
Classe File
Arquivos
14
Classe File
Arquivos
15
Classe File
Arquivos
16
Classe File
Arquivos
17
Data
Stream
Data
Stream
(uxo
de
dados):
Sequncia
de
dados
transmi8dos
de
um
programa
para
um
des8no
qualquer
(arquivo
ou
console),
ou
enviada
de
uma
fonte
qualquer
para
o
programa.
Arquivos
18
Data
Stream
A
biblioteca
Java
de
entrada
e
sada
de
dados
possui
classes
que
representam
data
streams.
Essas
classes
escondem
os
detalhes
do
que
ocorre
aos
dados
quando
estes
esto
sendo
transmi8dos.
Arquivos
19
Data
Stream
Existem
quatro
classes
razes
para
representar
streams:
InputStream
-
uxos
de
entrada
de
dados
basead
em
bytes
20
Data
Stream
Existem
quatro
classes
razes
para
representar
streams:
Reader*
-
uxos
de
entrada
de
dados
baseado
em
caracteres
21
Data
Stream
O u t r a s
c l a s s e s
h e r d a m
( d i r e t a
o u
indiretamente)
dessas
para
criar
streams
dedicados
a
um
m
mais
especco
(temos
d u a s
h i e r a r q u i a s
R e a d e r / W r i t e r e
InputStream/OutputStream).
C o m o
e x e m p l o
t e m o s
a s
c l a s s e s
FileInputStream, FileOutputStream,
FileWrite e FileReader
que
representam
streams
para
escrita
e
leitura
de
dados
em
arquivos.
Arquivos
22
Data Stream
Arquivos
23
Data Stream
Arquivos
24
Data Stream
Arquivos
25
Data Stream
Arquivos
26
Exerccio
1
Crie
um
diretrio
em
C:\licenca
e
dentro
deste
diretrio
crie
um
arquivo
chamado
licenca.lic
Escreva
uma
classe
que
liste
os
arquivos
do
diretrio
C:\licenca
e
imprima
uma
mensagem,
se
no
diretrio
houver
um
arquivo
com
a
extenso
.lic;
Esse
programa
tambm
deve
ler
o
contedo
do
arquivo
.lic
e
validar
se
na
primeira
linha
do
arquivo
est
a
licena
vlida
para
execuo
do
sojware.
Arquivos
27