Speicherrn/Laden auf Festplatte (bitte dringend antworten)
-
Hallo ich bin neu hier, habe aber schon Erfahrung mit C++.
Ich wollte auf jeden Fall Fragen, ob und wie man ein (eigenes) Dateiformat auf der Festplatte speichern und öffnen kann? In meinem Fall ist das so, dass ich eine Art "Picture to Video"habe, wo man:1.auf öffnen klicken sollte, dann aus seinem eigenen Ordner z. B. "eigene Bilder" Bilder importiert und am Schluss an einem beliebigen Speicherort als mp4, etc. exportieren kann.
- bei Beenden des Programms den Zwischenstand unter z. B. Dokumenten als eigenes Dateiformat abspeichern, und beim nächsten Mal öffnen und weiter bearbeiten kann. (Vielleicht ässt sich dies über ein .txt Dokument verwirklichen?)
Wie ihr seht, bin ich in Sachen Speichern noch nicht sehr erfahren, bitte euch, mir zu helfen, und wenn es nicht gehen sollte, nicht meine Idee/Wunsch zu verteufeln, sondern dies verständlich zu erklären.
Vielen Dank, Poldi
-
Wie würdest du denn jedes andere, nicht selbsterfundene Format behandeln? Du würdest irgendetwas schreiben, das dieses Format lesen und/oder schreiben kann. Was hält dich bei einem selbsterfundenen Format davon ab?
-
@SeppJ Vermutlich dass er auch nicht weiss wie er andere Formate lesen/schreiben kann.
@Poldi Wenn du ein einfaches Text-basiertes Format machst, ist das für den Anfang (und auch sonst) meist ganz gut. Weil: du kannst den Teil zum Speichern sehr einfach mit jedem Text-Editor prüfen. Und du kannst zum Testen der Lesefunktion ebenso sehr einfach mit dem Text-Editor schnell viele verschiedene Beispiele erzeugen, inklusive komischer Sonderfälle, defekter Files etc.
Lesen und Schreiben kannst du sowas in C++ dann relativ einfach mit den IO-Streams. Z.B.
std::ofstream
zum Schreiben undstd::ifstream
zum Lesen. Tutorials dazu gibt's zu Hauf im Netz.
-
Vielen Dank für eure Antworten, 3 Fragen noch:
-
Ich habe mich zu iostreams informiert, aber dort steht nur etwas von Ausgabe auf dem Bildschirm oder Tastatureingabe?
-
Wie kann ich bekannte Dateiformate öffnen/speichern z.B. mp4, etc.?
Vielen Dank und schönen Tag noch, Poldi
-
-
@Poldi sagte in Speicherrn/Laden auf Festplatte (bitte dringend antworten):
Vielen Dank für eure Antworten, 3 Fragen noch:
richtig zählen ist beim programmieren ganz wichtig.
-
Das steht da auch.
cout bedeutet Console OUT.
Du musst deinen eigenen Stream öffnen und dann die Ausgabe darauf machen. -
Genauso wie eigene Formate.
Du musst aber die Daten darin entsprechend interpretieren.
Für gängige Formate gibt es dafür Libraries, musst du halt suchen.
Schau dir mal einen HEX-Editor/Viewer an.
-
-
@Poldi sagte in Speicherrn/Laden auf Festplatte (bitte dringend antworten):
- Wie kann ich bekannte Dateiformate öffnen/speichern z.B. mp4, etc.?
Indem man erstmal einige Wochen Grundlagen lernt. Kannst dichh dann mit deinem konkreten Problem ja nochmal hier melden.
-
@TGGC Bei mp4 werden einige Wochen nicht reichen...
-
Am einfachsten wäre es natürlich mit einem fertigen Programm, ffmpeg z.B.
https://trac.ffmpeg.org/wiki/Slideshow
Dann könntest du wirklich direkt mit Projektdateien anfangen. Eine Batch-Datei wäre dann allerdings ebenfalls ausreichend.
Wenn es auch nur etwas speziell werden soll (verschiedene Überblendungen, Hintergrundbilder/„Ambilight“, Zuschneiden, ...) kommst du nicht daran vorbei, dich ersteinmal mit den grundsätzlichen Themen auseinanderzusetzen.
Bilder laden, verstehen, wie die Daten im Speicher liegen, Videos erstellen mit video for windows o.Ä., evtl. auch (wenn man schon mal alles beisammen hat) Unterstützung für andere Formate wie gif, Umstellung auf GUI, da die Konsole für so ein Vorhaben eher ungeeignet ist, ...
Und dann wäre es auch völlig okay, Dateipfade zunächst fest im Code stehen zu haben.
-
@Mechanics Naja weiss nicht, ich glaube nicht dass die libavformat SO furchtbar schwer ist. Also angenommen man will bloss was ganz ganz einfaches wie den FOURCC auslesen
-
Mag sein, so gut kenne ich das Format jetzt persönlich nicht Ich fand aber die Formulierung "bekannte Formate wie mp4 öffnen/speichern" so allgemein, dass ich da jetzt mal reininterpretiert habe, dass er meint, das könnte er alles komplett selber machen. Ohne zu verstehen, was das jetzt überhaupt bedeutet, und was dahintersteckt.
-
p.s. Das erinnert mich sogar an meine ersten Gehversuche mit Delphi 1. Ich hatte dann recht schnell gelernt, wie man Dateien "öffnen" kann. Hab ein TMemo in mein Fenster gezogen, Word Dokumente "geladen" und da angezeigt. Und hab mich gewundert, warum das so anders ausschaut, als in Word.
-
Vielen Dank für eure zahlreichen Antworten, ich werde jetzt erst einmal alles ausprobieren und ein wenig tüfteln, und mich bei Fragen an euch Wenden.
Schönen Abend noch, Poldi
-
Eine allgemeine Frage noch, welche IDE nutzt ihr so? Ich Visual Studio.
-
@Poldi sagte in Speicherrn/Laden auf Festplatte (bitte dringend antworten):
Visual Studio
Same here.
-
@DirkB sagte in Speicherrn/Laden auf Festplatte (bitte dringend antworten):
cout bedeutet Console OUT.
cout
steht für "character out", s. Bjarne Stroustrup's C++ Style and Technique FAQ: cout.
-
@TGGC sagte in Speicherrn/Laden auf Festplatte (bitte dringend antworten):
Indem man erstmal einige Wochen Grundlagen lernt. Kannst dichh dann mit deinem konkreten Problem ja nochmal hier melden.
Wo lerne ich denn diese Grundlagen? Ich bin im Internet nicht fündig geworden.
-
@Poldi Bücher
-
@Poldi sagte in Speicherrn/Laden auf Festplatte (bitte dringend antworten):
Wo lerne ich denn diese Grundlagen?
Du fängst einfach an.
Schreibst Daten in eine Datei.
Dann liest du die wieder ein.