| Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme. |
Diskussion: c++ Datei auslesen im Forum Code Kitchen, in der Kategorie Software Home; Anzeige So hallo erstmal. Ich muss für die Schule ein Programm schreiben. Unzwar möchte ich den Pfad einer Datei über ...
![]() |
| | #1 (permalink) |
| Registriert seit: 03.11.09 ![]() Likes: 0 | Anzeige So hallo erstmal. Ich muss für die Schule ein Programm schreiben. Unzwar möchte ich den Pfad einer Datei über eine Suchfunktion herausfinden um dann Interpret, Titel, Dauer und einen Tag aus zu lesen. Kennt jemand dafür Funktionen. Ich fand beim googlen nur struck id3_write gefunden aber damit kam ich leider nicht klar :(. Mfg Marvin |
| | |
| | #2 (permalink) | |||
| Registriert seit: 27.12.07 ![]() Likes: 39 | Zitat:
Zitat:
Zitat:
mfg bad_alloc
__________________ You shoot yourself in somebody else's foot.|Dann gabs da noch den Mathematiker der P?=NP in O(1) erklärte. |[A]| = p(·,|[A]|)+1 | |||
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Themenstarter Registriert seit: 03.11.09 ![]() Likes: 0 | Erstmal danke ![]() Also schreiben muss ich nichts Das ist mehr ein Zusatz zu unseren Programm daher haben ich keine Richtlinien. Das mit den ID3 Tags stimmt schon. Allerdings habe ich anch Deutschen Sachen gegooled. Die Suchfunktion schreibe ich ebenfalls selbst mit den Functionen FindNextFile und FindFirstFile. Magst du mir vielleicht trotzdem ncoh sagen wie ich die Datei einbinde ich schreibe dir noch kurz den Quelltext: struct id3_write { char tag[3];//immer TAG char title[30]; char artist[30]; char album[30]; char year[4]; char komment[28]; char track[2]; char genre[1]; }write_id3; |
| | |
| | #4 (permalink) |
| sooo ich bin heut mal ganz sozial und zeig dir, wie ich das mal gemacht hab.. zumindest nen ausschnitt die struct: Code: // MP3ID3V1TAG structure
struct MP3ID3V1TAG
{
char ident[3]; // TAG
char title[30];
char artist[30];
char album[30];
char year[4];
char comment[28];
BYTE reserved;
BYTE tracknum;
BYTE genre;
}; der code: Code: // read the ID3 tag
// set up a structure for reading the ID3 version 1 tag
MP3ID3V1TAG sID3V1;
if (SetFilePointer(hFile,-128,NULL,FILE_END) != INVALID_SET_FILE_POINTER &&
ReadFile(hFile,&sID3V1,128,&dwNumBytesRead,NULL) &&
dwNumBytesRead == 128 && memcmp(sID3V1.ident,"TAG",3) == 0)
{
char strTemp[31]; strTemp[30] = 0; // make a temporary null-terminated buffer
memcpy(strTemp,sID3V1.title,30); m_strTitle = strTemp;
memcpy(strTemp,sID3V1.artist,30); m_strArtist = strTemp;
memcpy(strTemp,sID3V1.album,30); m_strAlbum = strTemp;
strTemp[4] = 0; memcpy(strTemp,sID3V1.year,4); m_strYear = strTemp;
// now, depending on the reserved byte, the comment is 28 bytes or 30 bytes
if (sID3V1.reserved)
{
// NOTE: even if sID3V1.album is of size 28, the reserved and tracknum
// are right after, so they'll be included in the comment, which is what
// we want
memcpy(strTemp,sID3V1.comment,30); m_strComment = strTemp;
}
else
{
memcpy(strTemp,sID3V1.comment,28); m_strComment = strTemp;
m_nTrack = sID3V1.tracknum;
m_nGenre = sID3V1.genre;
}
m_dwValidity |= MP3VLD_ID3V1_VALID;
} | |
| | |
| | #5 (permalink) |
| Themenstarter Registriert seit: 03.11.09 ![]() Likes: 0 | So erstmal Danke Ich habe es heute endlich geschafft mich um deine Antwort zu kümmern. Hatte leider viel zu tun. Jetzt habe ich neue Fragen zu deinen Code die ich nicht beantworten konnte.Was genau bewirkt "|=".Wie weiße ich dem Handle eine Musik Datei zu?Was genau muss ich mit dem Struct machen (Einbinden, Aufrufen, Auslesen)Mfg Marvin |
| | |
| | #6 (permalink) |
| Senior Member Registriert seit: 27.06.04 ![]() Likes: 0 | Wie wärs mit ein wenig Eigeninitiative? Wenn du nach SetFilePointer( googlen würdest, wüsstest du, dass hFile ein File-Handle ist. Wenn du diesem Link folgst findest du heraus wie du eine Datei öffnest um einen File-Handle zu erstellen: http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx m_dwValidity |= MP3VLD_ID3V1_VALID ist die Kurzform fürm_dwValidity = m_dwValidity | MP3VLD_ID3V1_VALID das bedeutet, dass m_dwValidity true ist wenn entweder m_dwValidity oder MP3VLF_ID3V1_VALID true sind (was du auch selbst mit einer guten C/C++ Referenz hättest herausfinden können...) Geändert von Cyberm@ster (27.11.09 um 11:01 Uhr) |
| | |
| | #7 (permalink) | |
| Themenstarter Registriert seit: 03.11.09 ![]() Likes: 0 | Zitat:
| |
| | |
| | #8 (permalink) |
| Senior Member Registriert seit: 27.06.04 ![]() Likes: 0 | Wenn du wirklich denkst, die Definition von Eigeninitiative sei mal kurz in die Borland Hilfe zu schauen und gleich zu fragen wenn du nicht findest was du suchst dann hast du wohl Eigeninitiative bewiesen. Wie dem auch sei, ob dreist oder nicht, ich hab deine Frage beantwortet anstatt dich mit nem "Google ist dein Freund" abzuspeisen. |
| | |
| | #9 (permalink) | |
| Themenstarter Registriert seit: 03.11.09 ![]() Likes: 0 | Zitat:
| |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| OllyDBG - Datei auslesen | kuzco | Hacks & Crackmes | 2 | 16.09.09 20:02 |
| Text Datei auslesen? | Virus | (Web-) Design und webbasierte Sprachen | 9 | 01.08.07 22:11 |
| Nero Log-Datei auslesen..... | machine | Die Problemzone | 0 | 28.02.07 16:34 |
| Txt Datei auslesen und vergleichen | Chakky | (Web-) Design und webbasierte Sprachen | 7 | 20.07.05 19:28 |
| in c aus datei richtig auslesen | MacFrosty | Code Kitchen | 2 | 29.06.04 13:46 |