AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Dateien auf korrekte Daten überprüfen
Thema durchsuchen
Ansicht
Themen-Optionen

Dateien auf korrekte Daten überprüfen

Ein Thema von himitsu · begonnen am 15. Jul 2006 · letzter Beitrag vom 15. Jul 2006
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.168 Beiträge
 
Delphi 12 Athens
 
#1

Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 07:08
Moin,

ich wollt mal gern fragen, ob hier jemand gute Möglichkeiten kennt (entwerder schon vorhandene Codes/Programme, oder Ideen wie man es machen könnte), womit/wie man verschiedenste Dateitypen auf intakte Dateiinhalte prüfen kann.

Delphilösungen (Win32), oder welche die man in ein Delphiprogramm einbinden kann würden mir am besten gefallen.


Grund ... hab hier mehrere Dateien (nach Datenrettung auf verschiedene Varianten/Optionen), welche unterschiedliche Bytes (Defekte) enthalten, obwohl die eigentlich gleich sein sollten.

Bei den meißten gepackten Archiven ist das ja oftmals recht einfach, aber anderesseits sagen viele Programme nichts, wenn die Dateien "defekt" sind und versuchen es so gut wie möglich anzuzeigen/zu verarbeiten.

Außerdem könnnten ja auch nur Daten hinten angehängt sein, so das die Datei O, wirkt, aber dennoch "defekt" ist.


Bilder werden sind z.B. untern total schwarz (Dateiende abgeschnitten), oder haben fehlerhafte Zeilen (defekte Sektoren) aber bemerken tut man es nur, wenn man überall reinguckt, was ja nicht immer wenig aufwand ist.

Oder mp3's, mpeg's ... hab hier einige, die unterscheiden sich in bis zu 'nem MB, obwohl sie rein optisch/akustisch gleich aussehn/klingen (das Viedeo hat aber auch schon durch die kompression einige Bildfehler ... es fallen also Neue nicht so schnell auf).

Es hier kommen auch schon mal total falsche Inhalte vor ... z.B. ein .jpeg und drin is 'ne EXE (da hatte aber der Vierenscanner schon gemekert) ... aber z.B. .pas mit irgendwas anderem drin is ja och möglich ... u.s.w.


Gesucht sind also Möglichkeiten die Ist-Zustände mit den Sollzuständen zu vergleichen.



's würde mir erstmal die Entscheidung, was ich hier löschen darf sehr erleichtern (auch wenn man im Moment keinen Unterschied sieht, will ich dennoch nur die intackteren Dateien behalten) und dann wäre es auch mal was ganz praktisches für ein Datenrettungs/-prüfprogramm



ein hoffnungsvoll wartender himi ^^
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 07:14
Am besten du erstellst für alle Dateien Prüfsummen speicherst diese und vergleichst sie regelmäßig mit dem aktuellen Stand.
Markus Kinzler
  Mit Zitat antworten Zitat
Go2EITS

Registriert seit: 25. Jun 2006
519 Beiträge
 
Delphi 7 Personal
 
#3

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 07:32
Moin, himitsu!
Hagen Filevergleich
Ich glaube, der Code von Hagen hilft Dir weiter.
GO2EITS
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.168 Beiträge
 
Delphi 12 Athens
 
#4

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 08:42
Das Problem ist ja nicht die Dateien zu vergleichen ... ich weiß ja, daß sie unterschiedlich sind, also werd ich sie wohl bestimmt schon verglichen haben

Ich möchte wissen ob ihr Inhalt OK ist ... denn wenn die Dateien unterschiedlich sind, dann ist ja mindestens eine davon defekt, aber welche.

Es könnten ja auch beide futsch sein und wenn man dann Glück hat und weiß was fehlerhaft ist, dann könnte man ja vielleicht sogar aus beiden teilweise defekten Dateien eine Ganze machen

[add]
Bilddateien z.B.:
man könnte die ja in eine entsprechende Komponente laden und wenn sie defekt sind, dann gibt's halt 'nen Fehler ... da wüßte man zwar schonmal, daß dieses Bild entweder keines ist, oder es ist halt zu (weil ja auch teilweise defekte Bilder erfolgreich geladen werden ... nur halt mit "Pixelfehler") defekt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#5

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 10:32
Hi Himitsu,

vielleicht solltest du für dein Problem ein Dateisystem entwickeln, das deine Anforderungen erfüllt.
Schreib- und Lesevorgänge müssen auf Konsistenz überpüft werden, da hilft es aus meiner Sicht auch nicht an "defekten Daten" herumzudoktern.

http://de.wikipedia.org/wiki/Dateisystem
http://de.wikipedia.org/wiki/Journaling-Dateisystem
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.168 Beiträge
 
Delphi 12 Athens
 
#6

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 11:19
das wäre dann wohl etwas weit ausgeholt, nur weil FAT und NTFS aus verschiedenen Gründen mal 'nen Fehler hat, gleich ein neues FS (mit nochmehr Overhead) zu entwickeln ^^
(die Dateien sind ja jetzt auf 'ner intakten Partition)

Ich möchte ja nur vorhandene Daten dahingehend prüfen können, ob die OK sind ... also z.B. ob in einer .jpeg-Datei wirklich ein JPeg drin ist und ob dieses auch intakt ist.
Und wenn nicht wie groß, oder was der Fehler ist.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#7

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 12:34
Schon mal vorneweg: Ich hab eigentlich keine Ahnung...

Möglichkeit für ASCII-Dateien: Es dürfen nur bestimmte Zeichen vorkommen(welche, sollten klar sein)
Möglichkeit für JPEG-Dateien: Header suchen(wie der aussieht steht bestimmt irgendwo(RFC, Wiki, google, ...)), vergleichen; Inhalt(größe) mit Header vergleichen

Auf jeden Fall wirst du für jedes Format ne neue Routine schreiben müssen und die wird in den wenigsten Fällen 100%ig sagen können, ob die Datei nun defekt ist, oder nicht. Propietäre Formate und Binaries machen natürlich noch mehr Probleme...

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 13:16
Was du vorhast geht nicht, nicht ohne dass in jeder Datei eine Prüfsumme steht. Das ist genauso, als wenn du einen Schreibfehler in einem Text finden wolltest, dessen Sprache du aber nicht kennst und verstehst.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.168 Beiträge
 
Delphi 12 Athens
 
#9

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 13:49
OK, in 'nem BitMap könnte man defekte Pixel nicht finden, aber in den ganzen komprimierten Sachen sollte es doch möglich sein?

Schließlich dürfte es dort ja zu größeren und kleineren Dekomprimierungsfehlern kommen?

Und die aufwendigeren Dokumente (Word/Excel und Co) sollten doch auch merken können, ob da irgendwo was nicht stimmt?

Ich zitiere (fast) mal den WMP "Unerwartete Zeichenfolge entdeckt ... Datei konnte nicht geöffnet werden".
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
stefan2005

Registriert seit: 30. Sep 2003
Ort: Puchheim
250 Beiträge
 
Delphi 6 Personal
 
#10

Re: Dateien auf korrekte Daten überprüfen

  Alt 15. Jul 2006, 13:50
hi,
man könnte natürlich den Header jeder Datei auslesen und dann den Typ bestimmen.
Es sollte ja möglich sein zu prüfen, ob der Header dann wenigstens stimmt, und wird nicht in fast jeder Datei, wie JPEG oder MP3, auch eine Prüfsumme im Header angegeben ?

mfg,
stefan
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz