Sie sind auf Seite 1von 27

CENTRO UNIVERSITRIO DE JOO PESSOA

COORDENAO DE CINCIAS DA COMPUTAO

Manipulao de Arquivos em
Java
Jefferson Ferreira Barbosa
jeffersonjpa@gmail.com

Joo Pessoa
2014

Obje8vos

Compreender o uso de fontes de dados


Conhecer a classe File
Classes stream
Ler e escrever bytes, caracteres e Strings
de/para arquivos;

Arquivos

Problema
que
Nosso programa
precisa se
comunicar com
o mundo
exterior!

Arquivos

Mas existem diversos 8pos de fontes e des8nos


de dados (arquivos, console, conexes de rede
etc).

Arquivos

Alm disso, temos vrios modos de acesso


(seqencial, aleatrio, com ou sem buer, por
linhas, por palavras, binrio, caractere, etc.)

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.

O caminho ou nome informado no momento


da criao de um objeto da classe File no
pode ser alterado.
Arquivos

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

OutputStream - uxos de sada de


dados basead em bytes
Arquivos

20

Data Stream
Existem quatro classes razes para representar
streams:
Reader* - uxos de entrada de
dados baseado em caracteres

Writer* - uxos de sada de


dados baseado em caracteres
*Suporte para caracteres internacionais
Codicao Unicode (16 bits)
Arquivos

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

Das könnte Ihnen auch gefallen