c

Unabhängige Zufallszahlen / Random Klasse im .NET Framework

Tim Riemann
Heute hat mir ein Kollege erzählt, dass die Random Klasse im .NET Framework keine vernünftigen Zufallszahlen erzeugen würde und dass zwei Instanzen der Random Klasse jeweils die gleichen Zufallszahlen erzeugen. Das entsprechende Beispiel hat er mir schnell anhand eines kleinen NUnit-Tests gezeigt, der in etwa so aussah: var numbers1 = new List<int>(); var numbers2 = new List<int>(); var random1 = new Random(); for (int i = 0; i < RANDOMNUMBERS; i++) { numbers1.

Inhalt eines Ordners mit einer ZIP Datei und MD5 prüfen

Tim Riemann
In den letzten Tagen habe ich mir die Frage gestellt, wie ich erkennen kann, ob die Dateien, die ich auf einem Server abgelegt habe, wirklich noch ihren richtigen Inhalt haben oder ob sie evtl. durch Übertragungsfehler o.ä. geändert wurden. Die übliche Methode ist, dass man bspw. den Inhalt einer ZIP Datei mit einem MD5 Hash abgleicht, aber das hilft bei einem Ordner dann auch nicht weiter. Aus diesem Grund habe ich mich mal daran gemacht und ein kleines Programm geschrieben, das zuerst die ZIP Datei mit einem MD5 Hash vergleicht und anschließend dann den Inhalt des ZIP Datei mit dem Inhalt des Ordners vergleicht und neben einer GUI auch per Kommandozeile gesteuert werden kann, damit man die Prüfung in einer Batch-Datei durchführen kann.

ProjectEuler.NET - was zum Knobeln für Zwischendurch

Tim Riemann
Eigentlich wollte ich schon lange mal wieder etwas bloggen, genug Material hatte ich ja schon dafür, aber irgendwie hatte ich bisher noch keine Lust. Trotzdem will ich jetzt ein Projekt vorstellen, mit dem ich momentan viel Spaß habe: Project Euler. Project Euler lässt sich relativ einfach beschreiben: Es werden mathematische Aufgaben gestellt, die mit Hilfe einer frei wählbaren Programmiersprache (oder halt auch nur mit einem Zettel, wenn man das kann) gelöst werden sollen.

BufferedStream oder nicht?

Tim Riemann
Ab und an trifft man immer wieder auf elementare Fragen beim Programmieren, die man sich vorher in der Art noch nicht gestellt hat. Diesmal war es generell der FileStream in .NET. Die Frage ist halt, ob die FileStream Klasse in .NET schon einen Buffer verwendet oder ungebuffert ist, sodass man sie besser in einen BufferedStream einpackt, um die Performance zu erhöhen. Glücklicherweise bin ich auf einen Blogeintrag von Brad Abrams im MSDN gestossen, der diese Frage eindeutig beantwortet: