From ec08f9c95e49e759266f76f364a94408e1a0a42b Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Tue, 6 Jul 2021 15:33:50 +0200 Subject: [PATCH] Filesystem: Add GetChecksumForString --- Modules.Filesystem/File.vb | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/Modules.Filesystem/File.vb b/Modules.Filesystem/File.vb index 4c84e12b..0573be64 100644 --- a/Modules.Filesystem/File.vb +++ b/Modules.Filesystem/File.vb @@ -1,5 +1,6 @@ Imports System.IO Imports System.Security.Cryptography +Imports System.Text Imports System.Text.RegularExpressions Imports DigitalData.Modules.Logging @@ -77,9 +78,7 @@ Public Class File Using oFileStream = IO.File.OpenRead(FilePath) Using oStream As New BufferedStream(oFileStream, 1200000) Dim oChecksum() As Byte = SHA256.Create.ComputeHash(oStream) - Return BitConverter. - ToString(oChecksum). - Replace("-", String.Empty) + Return FormatHash(oChecksum) End Using End Using Catch ex As Exception @@ -88,6 +87,18 @@ Public Class File End Try End Function + Public Function GetChecksumFromString(pStringToCheck As String) As String + Dim oBytes() As Byte = Encoding.UTF8.GetBytes(pStringToCheck) + Dim oChecksum() As Byte = SHA256.Create.ComputeHash(oBytes) + Return FormatHash(oChecksum) + End Function + + Private Function FormatHash(pChecksum) + Return BitConverter. + ToString(pChecksum). + Replace("-", String.Empty) + End Function + ''' ''' Adds file version string to given filename `Destination` if that file already exists. '''