[c++]format pliku tekstowego

0

Jak zrobić własny format pliku tekstowego ? format który posiadał by kompresje, szyfrowanie i można było w nim zamieścić jakieś dodatkowe informacje ( np. autor, data utworzenia ) ?

0

zrob go jak chcesz, przeciez to Twoj wlasny format... o to w tym chyba chodzi?

0

Tylko nie wiem jak to sie robi, konkretnie, gdzie mam zamieszczać ( w którym miejscu) np. te informacje o autorze itp.

@Pokemaniak
Robie to na linuksie, nie chodziło mi o borland c++

0

Tworzysz sobie nagłówek który będzie zawierał informacje o tych danych i umieszczasz go na początku pliku np.:

struct tekst_naglowek {
  bool zakodowany;
  bool kompresowany;
  bool dane_autora;
};

Następnie odczytujesz ten nagłowek i robisz z tym plikiem co trzeba.
Tworzysz kolejny nagłówek z danymi zewnętrznymi o pliku jak autor, data itp. i odczytujesz konkretną informacje, po sprawdzeniu w nagłówku, czy pole np. o autorze istnieje.

Nie ma tu zasady jak ten plik masz zrobić, jak Endrju pisał, to jest twój plik i to Ty masz go znać.

0

Generalnie mozesz robic jak Ci wygodniej. Mozesz zapisywac litery co 6 bajt, jak tak wolisz. Twoj format Twoja sprawa. A co do naglowka na poczatku, to np. tagi w mp3 swego czasu zapisywane byly na koncu pliku(moze dalej sa) - najwyrazniej tak bylo wygodniej (pewnie z powodu kompatybilnosci wstecznej).

0

Dzieki.
Jeszcze jedno pytanie. Jak te "nagłówki" ( poszczególne części ) oddzielać od siebie ?

0

@majorek
nie napisałeś miałem prawo się pomylić

0
majorek napisał(a)

Dzieki.
Jeszcze jedno pytanie. Jak te "nagłówki" ( poszczególne części ) oddzielać od siebie ?

Tak jak Ci wygodnie. Srednikiem, jesli w poszczegolnych elementach nie wystepuje srednik; nowa linia, jak nie wystepuje nowa linia, a wygodniej Ci czytac calymi liniami; wyrazeniem 'uwaga, tutaj wystepuje przerwa miedzy naglowkami', jesli uznasz, ze ma to sens i ulatwia Ci prace z nimi ;)

0

Mozesz robic tak jak np w formacie 3DS, plik jest podzielony na tzw chunki (one tworza potem drzewo jak w XMLu ale Tobie wystarczy zeby byly na jednym poziomie), taki chunk wyglada mniej wiecej tak, ze pierw jest short oznaczajacy typ chunka (tam np OBJECT, VERTEX, FACE itp), dalej jest dlugosc chunka odliczajac dane (np jako int) i po calym tym naglowku sa dane chunka. Ty mozesz np zrobic takie dwa chunki: METAINFO i powiedzmy CONTENT, w METAINFO walnij infomacje o autorze a w CONTENT tekst.

Mozesz tez uzyc XMLa co imo byloby bardziej eleganckie ale jak wolisz.

//Dop: podobny do 3DSa jest tez np protokol GG ktorego opis gdzies tam krazy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1