Class FilePacker

java.lang.Object
AEDs3.Compression.FilePacker

class FilePacker extends Object
A classe FilePacker fornece métodos para empacotar e desempacotar arquivos. O empacotamento envolve a combinação de vários arquivos em um único arquivo, enquanto o desempacotamento extrai os arquivos individuais do arquivo empacotado.
  • Constructor Details

    • FilePacker

      FilePacker()
  • Method Details

    • pack

      public static void pack(String[] orig, String dst) throws IOException
      Empacota uma lista de arquivos em um único arquivo de destino.
      Parameters:
      orig - Um array de strings contendo os nomes dos arquivos a serem empacotados.
      dst - O nome do arquivo de destino onde os arquivos serão empacotados.
      Throws:
      IOException - Se ocorrer um erro de E/S durante o empacotamento.
    • unpack

      public static String[] unpack(String packedFile) throws IOException
      Desempacota um arquivo empacotado, extraindo os arquivos individuais. Aviso: esse método foi em grande parte otimizado com ajuda de um LLM. O método em si, além da barra de progresso que ele usa, foram escritos à mão, mas a implementação do buffer de transcrição, que dramaticamente acelera a execução, foi inteiramente feita por um LLM.
      Parameters:
      packedFile - O nome do arquivo empacotado a ser desempacotado.
      Returns:
      Um array de strings contendo os nomes dos arquivos extraídos.
      Throws:
      IOException - Se ocorrer um erro de E/S durante o desempacotamento.
    • printProgressBar

      private static void printProgressBar(long current, long total, int barWidth, String label)
      Imprime uma barra de progresso no console.
      Parameters:
      current - O progresso atual.
      total - O valor total para completar o progresso.
      barWidth - A largura da barra de progresso.
      label - O rótulo associado à barra de progresso.