Você está aqui: Java ::: Dicas & Truques ::: Entrada e Saída em Arquivos (File Input/Output - IO)

Como retornar a posição do ponteiro de arquivo da classe RandomAccessFile em uma operação de leitura ou escrita

Quantidade de visualizações: 8527 vezes
Quando estamos efetuando a leitura ou escrita de um arquivo usando um objeto da classe RandomAccessFile, muitas vezes precisamos saber a posição atual do ponteiro de arquivo.

Para tal operação a classe RandomAccessFile nos fornece o método getFilePointer(). Este método retorna um inteiro informando a posição do ponteiro de arquivo a partir da posição zero do arquivo. Veja um exemplo no qual lemos um byte de cada vez e, a cada operação nós obtemos a posição atual do ponteiro:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import java.io.*;

public class Estudos{
  public static void main(String[] args){
    // uma instância de RandomAccessFile para leitura e escrita
    try{
      RandomAccessFile arquivo = 
        new RandomAccessFile("C:\\java\\conteudo.txt", "r");

      // vamos obter a posição do ponteiro de arquivo
      long posPonteiro = arquivo.getFilePointer(); 
      System.out.println("Posição do ponteiro: " + posPonteiro);

      // vamos avançar um byte
      byte lido = arquivo.readByte();
      System.out.println("Li o byte: " + lido);      

      // vamos obter a posição do ponteiro de arquivo novamente
      posPonteiro = arquivo.getFilePointer(); 
      System.out.println("Posição do ponteiro: " + posPonteiro);

      // vamos avançar mais um byte
      lido = arquivo.readByte();
      System.out.println("Li o byte: " + lido);

      arquivo.close();    
    }
    catch(FileNotFoundException fnfe){
      System.out.println(fnfe.getMessage());
    }
    catch(IOException ioe){
      System.out.println(ioe.getMessage());
    }

    System.exit(0);
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Pacote java.util ::: ArrayList

Como acessar um determinado item de uma ArrayList em Java usando índices - Como usar o método get() da classe ArrayList do Java - Revisado

Quantidade de visualizações: 20491 vezes
Em várias situações nós precisamos acessar os elementos da ArrayList de forma individual. Para isso podemos usar o seu método get() e fornecer o índice do elemento desejado. Lembre-se de que os índices em Java começam sempre em 0, ou seja, o primeiro elemento da ArrayList está no índice 0, o segundo no índice 1 e assim por diante.

Veja o código para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import java.util.ArrayList;
 
public class Estudos{
  public static void main(String[] args){
    // cria uma ArrayList que conterá strings
    ArrayList<String> nomes = new ArrayList<String>();
     
    // adiciona itens na lista
    nomes.add("Carlos");
    nomes.add("Maria");
    nomes.add("Fernanda");
    nomes.add("Osmar");    
     
    // obtém o terceiro item na lista
    String nome = nomes.get(2);
 
    System.out.println("O valor obtido foi: " + nome); 
 
    System.exit(0);
  }
}

Ao executar este código nós teremos o seguinte resultado:

O valor obtido foi: Fernanda

Esta dica foi revisada e testada no Java 8.


Java ::: Coleções (Collections) ::: ArrayList

Como excluir um elemento de uma ArrayList do Java baseado em seu valor - Como usar o método remove() da ArrayList do Java

Quantidade de visualizações: 14029 vezes
Nesta dica mostrarei como remover a primeira ocorrência de um elemento na ArrayList. Para isso nós vamos usar o método remove(), que recebe o valor do elemento a ser excluído. Se o elemento estiver na ArrayList e for excluído com sucesso, o retorno será true. Se o elemento não for encontrado, o retorno será false.

Veja o exemplo Java a seguir:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos_java;

import java.util.ArrayList;

public class Estudos {

  public static void main(String[] args) {
    // cria uma ArrayList que conterá strings
    ArrayList<String> nomes = new ArrayList<>();

    // adiciona itens na lista
    nomes.add("Carlos");
    nomes.add("Maria");
    nomes.add("Fernanda");
    nomes.add("Osmar");
    nomes.add("Maria");

    // Vamos remover o elemento "Osmar"
    if (nomes.remove("Osmar")) {
      System.out.println("O elemento foi removido com sucesso!");
    } 
    else {
      System.out.println("O elemento não foi encontrado!");
    }
    System.exit(0);
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

O elemento foi removido com sucesso!


Java ::: Dicas & Truques ::: Data e Hora

Como retornar a diferença de meses entre duas datas em Java - Datas e horas em Java

Quantidade de visualizações: 9240 vezes
O trecho de código abaixo mostra como obter a diferença de meses entre dois objetos Date. Estude-o atentamente. Esta é uma técnica muito útil para programadores que lidam com cálculos de datas em suas aplicações:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

import java.util.*;
import java.text.*;
 
public class Estudos{ 
  public static void main(String args[]){ 
    try{
      // constrói a primeira data
      DateFormat fm = new SimpleDateFormat(
        "dd/MM/yyyy");
      Date data1 = (Date)fm.parse("20/10/2008");
 
      // constrói a segunda data
      fm = new SimpleDateFormat("dd/MM/yyyy");
      Date data2 = (Date)fm.parse("30/12/2008");
 
      // vamos obter a diferença de meses
      long segundos = (data2.getTime() - 
        data1.getTime()) / 1000;
      int meses = (int)Math.floor(segundos / 2592000);
      segundos -= meses * 2592000;
      int dias = (int)Math.floor(segundos / 86400);
       
      // exibe o resultado
      System.out.println("As duas datas tem " +
        meses + " meses e " + dias + 
        " dias de diferença");
    }
    catch(ParseException e){
      e.printStackTrace();
    }
  } 
}

Ao executar este código Java nós teremos o seguinte resultado:

As duas datas tem 2 meses e 11 dias de diferença


Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 87 usuários muito felizes estudando em nosso site.