Frage zu Dateiformaten und Verschlüsselungen
-
Hallo!
Wie der Titel schon sagt habe ich eine Frage bezüglich Dateiformate und die Verschlüsselung (oder auch Komprimierung??) von Datein.
Also zuerst mal Frage nr. 1:
Ich weiß das Dateiendungen für ein Programm irrelevant sind. Aber wie kann ich ein eigenes Dateiformat für mein Programm "erstellen" ??
Ist das nichts weiter als seine Datei zu verschlüsseln ??(Und natürlich mit dem dafür vorgesehen Programm entschlüsseln zum ansehen)Frage nr. 2 :
Wie kann ich selbst eine datei als .bmp oder .gif etc. abspeichern ? Also angenommen man hat ein Programm geschrieben womit man zeichnen kann, ähnlich wie Paint von MS. Wie kann ich das gezeichnete als .bmp usw. speichern ?? (Wenn ich in meinem eigenen Format speichern würde, dann würde ich darin die informationen für x y Koordinaten und Farben speichern) Findet man dazu irgendwo informationen wie eine .bmp etc. datei "aussieht" (also die informationen die darin gespeichert werden für das bild) (es geht mir hier nicht nur um bmp sondern allgemein um bekannte dateiformate für bilder)
Frage nr. 3 :
Werden die Formate eigentlich gar nicht "verschlüsselt" sondern nur komprimiert??
Meine letze Frage noch :
Eine bmp gif etc. Datei kann man öffnen und bearbeiten wenn man weiß wie die Informationen gespeichert sind oder ??
Ich entschuldige mich für meine vielen Anfänger-fragen, aber ich finde dazu leider keine nützlichen informationen.
Ich will das nur für Übungszwecken machen
Also wenn jemand links zu diesen oder ähnlichen Themen hat bitte Posten !!Würde mich sehr freuen
-
Verschlüsselt ist nur, was geheim bleiben muss

PNG:
http://www.faqs.org/rfcs/rfc2083.htmlDamit kannst du PNGs öffnen, speichern und verändern
-
Danke
das hilft mir schon mal weiterGibts solche documente auch für andere Dateiformate ??
-
unter http://www.wotsit.org/ findet man informationen zu den meisten dateiformaten.
-
Wow die Seite ist super
Vielen Dank !!
-
zu 1.: Bei deinem eigenen Dateiformat hast du die völlige Freiheit, wie du die Daten speichern kannst - du mußt nur später wissen, welche Informationen du wo findest.
zu 2.: Zu BMP ist der Wikipedia-Eintrag recht ausführlich.
zu 3.: Die Daten werden normalerweise nicht verschlüsselt, sondern bestenfalls in einem (für Menschen) etwas unlesbaren Format gespeichert - Daten im Textformat zu verarbeiten ist für dein Programm ein wenig aufwendiger. Ob da etwas komprimiert wird, hängt vom verwendeten Format ab (BMP nutzt 1..32 Bit pro Bildpunkt komplett aus, GIF oder JPG versuchen, die Datenmenge etwas zu reduzieren).
-
Danke für den Link
auf Wikipedia hätt ich auch selber drauf kommen sollen, aber ich dachte nicht das man auch solche infos findet.Nur noch eine Frage,
gibt es auch eine andere möglichkeite die einzelnen bits bzw bytes aus einer Datei auszulesen ohne den shift operator (<<) ?? Ich bin bis jetzt noch auf keine andere Lösung gekommen außer mit dem shift operator immer 8 bits einzulesen um einen byte zu bekommen, um so den ganzen binärcode zu erhalten. Falls ein Blödsinn ist und falsch ist bitte korrigiert mich !!
Möchte auch hier auch gleich mein Lob an das Forum aussprechen
wirklich toll hier, so schnelle und kompetent Hilfe zu bekommen.
-
Erstmal ist das in dem Zusammenhang, wie du es verwendest, kein Shift-Operator (mehr), sondern ein IO-Operator

Aber was wichtiger ist - binäre Daten würde ich NICHT über op>> einlesen, dafür haben die Streams eigene Methoden (get(), read(), readsome()).
-
Danke
habs schon rausgefunden, das mit << war völliger blödsinn ^^
-
hai !
am leichtesten ist das bmp format zu handhaben

guck dir doch mal die strukturen
BITMAPFILEHEADER und BITMAPINFOHEADER an