io classes de pacotes:
- Para ler e escrever arquivos no sistema de arquivos local: FileInputStream e FileOutputStream
- Descrição locais arquivo de sistema de arquivos ou diretório: Arquivo, FileDescriptor e FilenameFilter
- Fornecer acesso aleatório ao arquivo suportes sistema de arquivos local: RandomAccessFile
leitura e gravação seqüencial:
classe FileInputStream é usado para abrir um arquivo de entrada, para abrir o arquivo não existe, uma FileNotFoundException exceção, esta é uma exceção, devem ser capturados ou declarar um não-operacional abandonar;
Na classe InputStream, o método read()
fornece três métodos de dados lidos do fluxo:
int read()
: Ler um byte do fluxo de entrada, formando retorna um número inteiro entre 0 a 255 (um método abstrato)int read(byte b[])
: Um certo número de bytes lidos a partir do fluxo de entrada, e armazena-os na matriz de tampãob
são.int read(byte b[],int off,int len)
: Comprimento lidos a partir do fluxo de entrada delen
dados, escrevendo matrizb
de índice deoff
posição de arranque, e devolve o número de bytes lidos obtida.
Para estes três métodos, se os retornos -1, indicando o final do fluxo, de outra forma, ele devolve o número de caracteres realmente lidos.
construtor do arquivo:
// um diretório do caminho parâmetro F1 File = new new Arquivo ( " / Home / Projeto / " ); // objeto tem dois parâmetros - o caminho eo nome do arquivo do arquivo F2 = new new Arquivo ( " / Home / Projeto / " , " A .bat " ); // ponto de caminho de arquivo f1 eo nome do arquivo F3 file = new novo arquivo (f1, " a.bat " );
código de arquivo lê:
File = o FileReader novo novo o FileReader ( "caminho de arquivo de armazenamento " ); // declarar um ficheiro de fluxo de entrada de arquivo, e o caminho do ficheiro especificado no sistema para facilitar o posicionamento int Dados = 0 ; // declarar um número inteiro variável para o armazenamento de leitura dados obtidos enquanto ((data = File.read ()) = - . 1 ) { // read () do loop while continua a ler método de arquivo, os dados são atribuídos aos dados em // Se a leitura falha ou fim, -1 é retornado, o valor de retorno especial pode ser identificado como o fim da leitura do Sistema. OUT .print (( carvão ) de dados); // saídas ler dados } File.Close (); // deve se lembrar de leitura depois de tomar o fim para fechar o arquivo
java.io.IOException Import; Importar um java.io.InputStream; Importar um java.io.OutputStream; pública classe do Teste { / * * * Todos os conteúdos do fluxo de entrada para a atribuição fluxo de saída * @ param em * OUT @ param * IOException @throws * / público vazio de cópia (o InputStream em , a OutputStream OUT ) throws IOException { byte [] = buf new new byte [ 4096 ]; int len = em .read (buf); // Leia um byte é um byte ler bandeira de fluxo final byte é -1 o tempo (len = -! . 1) { Fora .write (buf, 0 , len); len = em .read (BUF); } } Público estáticos vazios principais (String [] args) throws IOException { // gerado Auto TODO stub Teste t = new Test (); Sistema. fora .println ( " 输入字符: " ); t.copy (Sistema. em , Sistema. out ); } }
Aleatória ler e escrever:
Classe conteúdo do arquivo RandomAccessFile permite operações de leitura e gravação simultâneas para completa, que herdou diretamente Object, e ao mesmo tempo e implementa a interface DataInput DataOutput.
RandomAccessFile fornece um método para apoiar operações de arquivo aleatório:
readXXX()
Em alternativawriteXXX()
: AreadInt()
,readLine()
,writeChar()
,writeDouble()
e semelhantes.int skipBytes(int n)
: Mover o cursor para baixo um número de bytes.int length()
: Retorna o tamanho do arquivo.long getFilePointer()
: Retorna um ponteiro para a posição atual.void seek(long pos)
: Mova o ponteiro para chamar o local desejado.
Ao gerar um arquivo objeto aleatório, além do objeto de arquivo eo nome do arquivo especificado, mas também precisa especificar o modo de acesso ao arquivo.
Dê uma olhada no RandomAccessFile construtor:
RandomAccessFile(File file,String mode) RandomAccessFile(String name,String mode)
valores modo:
r
: Read-only, quaisquer operações de gravação vai jogar IOExceptionrw
: Ler e escrever, ele cria o arquivo quando o arquivo não existe, existe o arquivo, o conteúdo do arquivo originais permanecem inalterados, o conteúdo do arquivo mudança através da escrita.rws
: Open para ler e escrever, para"rw"
mais requisitos para cada atualização de conteúdo ou arquivos de metadados são escritos de forma sincronizada para o dispositivo de armazenamento subjacente.rwd
: Aberto para leitura e escrita, para"rw"
ainda exige que cada arquivo de conteúdo atualização são escritos de forma sincronizada para o dispositivo de armazenamento subjacente.