Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1551 | Anzahl registrierter User: 1841 | Besucher online: 13
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Den MD5 Hash einer Datei ermitteln


Autor: Tim Hartwig
Sprache: VB.NET
Bewertung: 7,4
(1 Bewertung)
Anzahl der Aufrufe: 17492
  
Kick it on dotnet-kicks.de  

Beschreibung:

Den MD5 Hash einer Datei ermitteln

Abgelegt unter: MD5, Hash, Datei.



Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Imports System.Security.Cryptography
Imports System.Text
Imports System.IO

Public Function MD5FileHash(ByVal sFile As String) As String
    Dim MD5 As New MD5CryptoServiceProvider
    Dim Hash As Byte()
    Dim Result As String = ""
    Dim Tmp As String = ""

    Dim FN As New FileStream(sFile, FileMode.Open, FileAccess.Read, FileShare.Read, 8192)
    MD5.ComputeHash(FN)
    FN.Close()

    Hash = MD5.Hash
    For i As Integer = 0 To Hash.Length - 1
        Tmp = Hex(Hash(i))
        If Len(Tmp) = 1 Then Tmp = "0" & Tmp
        Result += Tmp
    Next
    Return Result
End Function
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)

Zen schrieb am:  28.04.2007 11:02:48

Wenn man die For/Next-Schleife mit dieser Zeile ersetzt, ist der Code nochmal bisschen kürzer ;)
Result = Strings.Replace(BitConverter.ToString(Hash), "-", "")
Tim Hartwig schrieb am:  28.04.2007 11:17:14

Super das ist natürlich viel besser. Danke für den Tipp!
General Bison schrieb am:  17.04.2008 12:23:52

Hi
ich habe eine andere Methode gefunden, die allerdings einen ganz anderen Hashwert liefert, dafür aber VIEL SCHNELLER IST!
Ich habe aber leider KEINE AHNUNG von der Mathematik, die dahinter steht...
Wäre schön, wenn das mal jemand mit mehr Ahnung als ich unter die Lupe nimmt

Folgende Zeitmessungen habe ich bei einer 1.1 GB großen Datei gemacht
(jeweils Min und Maxwert):

activevb:
"55243ECF175013CFE9890023F9FD9037"
ElapsedTicks = 188235
ElapsedTicks = 349

Tim Hartwig:
"FAE29D6C14FA1A3E405AEFCC96959040"
ElapsedTicks = 136619208
ElapsedTicks = 40328337

http://www.activevb.de/rubriken/faq/faq0137.html

Dim data() As Byte = System.Text.Encoding.UTF8.GetBytes("Hallo Welt!")
Dim md5 As New System.Security.Cryptography.MD5CryptoServiceProvider()
Dim result As Byte() = md5.ComputeHash(data)
Dim ret As String
ret = Strings.Replace(BitConverter.ToString(result), "-", "")
General Bison schrieb am:  17.04.2008 13:39:02

Hat sich erledigt....
Ich hab nen fehler gemacht und einmal ZUVIEL auf Rückgängig geklickt....
 
System.Text.Encoding.UTF8.GetBytes("Hallo Welt!")

klar geht das schnell... sry für die überflüssigen Posts


Diese Snippets könnten für Sie interessant sein:
[C#] Gibt den MD5 Hash eines Stings als String zurück.
[VB.NET] Den MD5 Hash eines Strings ermitteln
[C#] MD5-Hash von Dateien ermitteln
[VB.NET] Datei und String Hash Klasse
[C++] Erstellt einen md5-Hash aus einem string
[VB.NET] Hash Validator Klasse
[C#] MD5 String validieren
[C#] Erstellt einen md5-Hash aus einem string
[C#] HashableElement
[C#] MD5 Verschlüsselung
[C#] String zu MD5
[VB.NET] CRC32 Hash einer Datei berechnen
[VB.NET] Den SHA1 Hash eines Strings ermitteln
[VB.NET] Den SHA1 Hash einer Datei ermitteln
[C#] SHA-1 Hash einer Datei erzeugen
[C#] SHA-1 Hash eines Strings erzeugen
[VB.NET] Ermittelt eines Hashwertes aus einem angegebenen String.
[C#] CRC32-Hash eines Strings
[VB.NET] CRC32-Hash eines Strings
[VB.NET] Datei im Explorer anzeigen und markieren
[C#] Datei anlegen
[C#] Aktuelles Verzeichnis auslesen
[VB.NET] Datei mittels Windows Dialog löschen
[VB.NET] Datei mittels Windows Dialog verschieben
[VB.NET] Datei mittels Windows Dialog kopieren
[VB.NET] Prüfen ob Datei gerade benutzt wird
[C#] Dateien in die Zwischenablage kopieren
[ASP.net] Textdatei zum Download anbieten
[C#] Arraylist in Textdatei schreiben
[C#] Textdatei in Arraylist speichern
[VB.NET] Datei Paketweise Kopieren
[ASP.net] Datei nach Bildupload prüfen
[C#] Dateien suchen mit LINQ
[C#] Datei/Ordner durch Erweiterungsmethoden abfragen
[C#] Datei-Eigenschaften zeigen (Eigenschaften-Fenster)
[C#] CSV Dateien schreiben
[C#] Create Nice File Size in C#
[VB.NET] Programmpfad mittels Erweiterung ermitteln in VB
[VB.NET] Dateien nach Datum sortieren
[C#] CSV und XML-Datei Datenbank-Import (incl. valid-check)
[C#] Datei umbenennen
[C#] Datei im Windows-Explorer anzeigen und markieren
[VB.NET] File Owner / File Besitzer
[VB.NET] wie in der CMD Pfad zu Datei ermitteln anhand des EXE-namens
[C#] Anzahl der Dateien in einem Ordner ermitteln
[VB.NET] Dateigröße als formatierter String
[VB.NET] Alle Dateien eines Ordners auflisten
[VB.NET] Den kurzen Pfad einer Datei ermitteln (8.3 Format)
[VB.NET] Klasse für Dateisuche
[C#] Erzeugen eines zufälligen Strings
[VB.NET] Dummy Datei erstellen
[C#] Datei in Papierkorb verschieben
[C#] Zeilen einer Datei zählen
[C#] Schreibschutz einer Datei setzen / entfernen
[ASP.net] Eine Datei zum Download anbieten
[VB.NET] Prüfen ob Dateiattribut vorhanden ist
[VB.NET] Bestimmtes Dateiattribut entfernen
[VB.NET] Datei ein bestimmtes Attribut geben
[VB.NET] Prüfen ob Datei eine EXE Datei ist
[C#] Prüfen, ob eine Datei ausfürbar ist (.exe, .bat, etc.)
[C#] Alle Dateien eines Ordners auflisten - C# Version -
[C#] eindeutigen Dateinamen ermitteln
[VB.NET] Datei-Inhalt anzeigen
[C#] Dateien und Ordner rekursiv löschen
[C#] Stream in Datei umleiten
[C#] Ordnergröße ermitteln
[C#] Automatisches Umbenennen eines Pfades
[C#] Kapazität mit Einheit darstellen
[C#] LogWriter klasse
[C#] MIMETypeManager
[C#] externes Programm aufrufen (andere Version) mit Parameter
[C#] Herausfinden welches Programm ein bestimmtes Dokument öffnet
[VB.NET] Gibt das Bytearray einer Datei zurück
[C#] Datei ein bestimmtes Attribut geben/setzen
[VB.NET] Klasse für SimpleFileVerification (SFV)
[C#] Laden und speichern von komprimierten Binärdaten
[C#] Datei einlesen und als ArrayList jede Zeile zurückliefern
[C#] Parallele Dateisuche über mehrere Laufwerke
[C#] Byte Größenangaben als String formatieren (KB, MB, GB, ...)
[C#] Textdatei einlesen auf verschiedene Arten
[C#] Datei Teilweise einlesen (gestückelt)
[C#] Bestimmte Zeile einer Datei löschen
[C#] File Container
[C#] PDF Dateien erstellen
[C#] Ist Datei beschreibbar
[C#] Sichern einer MS-SQLServer Datenbank aus C#
[C#] Datei mi GZip packen
[C#] ini Datei anlegen - mit Dictionary
[C#] Dummy Files erzeugen. ( Mit Inhalt )
[C#] Byte-Array in Struktur kopieren
[C#] Text in Textdateien suchen
[VB.NET] Prüfen, ob eine Datei überschrieben werden kann

schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.