Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Bug] Problema no GetBytes

esta dando este problema

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Meu codigos estão assim

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

os codigos estão basicamente iguais os da aula, não sei como resolver este problema

1 resposta
solução!

Olá, Matheus.

Tudo bem?

Pelas imagens e o contexto da aula, parece que o erro que você está encontrando está relacionado à função Get-FileSHA1. A exceção menciona que a matriz (ou array) não pode ser nula ao chamar o método GetBytes. Isso geralmente indica que o conteúdo do arquivo que você está tentando processar é nulo ou vazio.

Na função Get-FileSHA1, você está usando Get-Content para ler o conteúdo do arquivo e depois tenta obter os bytes desse conteúdo. Se o arquivo estiver vazio ou por algum motivo o Get-Content não estiver lendo o arquivo corretamente, $fileContent será nulo e causará o erro ao tentar usar GetBytes nele.

Para resolver isso, você pode adicionar uma verificação para garantir que o conteúdo do arquivo não é nulo antes de prosseguir com a conversão para bytes. Aqui está um exemplo de como você pode modificar a função Get-FileSHA1 para incluir essa verificação:

function Get-FileSHA1 ($filePath) {
    $fileContent = Get-Content $filePath
    if ($fileContent -eq $null) {
        Write-Host "O conteúdo do arquivo $filePath é nulo."
        return $null
    }
    $fileBytes = [System.Text.Encoding]::UTF8.GetBytes($fileContent)

    $sha1 = New-Object System.Security.Cryptography.SHA1Managed
    $hash = $sha1.ComputeHash($fileBytes)

    $prettyHashSB = New-Object System.Text.StringBuilder
    foreach ($byte in $hash) {
        $hexNotation = $byte.ToString("x2")
        $prettyHashSB.Append($hexNotation) > $null
    }

    $prettyHashSB.ToString()
}

Essa alteração irá parar a execução da função e informar no console se o conteúdo do arquivo for nulo, evitando assim a exceção.

Além disso, certifique-se de que os arquivos que você está tentando processar existem e não estão vazios. Se o problema persistir, pode ser útil verificar as permissões dos arquivos e se o caminho está correto.

Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software