Форум: "Прочее";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
ВнизСоздание своего формата файла Найти похожие ветки
← →
TIF © (2007-01-23 18:49) [0]Всем доброго времени суток!
Я тут увидел ветку про открытие картинок с помощью блокнота :-) Когда-то я делал что-то вроде этого: пытался написать инсталятор, суть которого была в том, что в мемо загоняется файл, а потом производится команда Memo.Lines.SaveToFile. Долго думал, почему эта программа не работает? :-))))))))
Всё закончилось благополучно: на глаза попалась статеёка про кодировки и всё встало на свои места. Теперь сетапы стараюсь делать по-нормальному (как я считаю)
-----
Так, вот, сам вопрос
Как создать свой формат файла? Суть в том, что в одном файле хранится, к примеру текст (досье человека) и другой файл (фото этого человека) + ещё и ещё файлы (если понадобится, например засунуть вордовский дкумент...). ООООчень большой + будет в том, что многие такой файл взломать просто не смогут (не считая меня :-) ), все данные будут сгруппированны, храниться вместе. Но программа, естественно, должна читать всё по-отдельности.
Что мне нужно на данный момент по-минимуму: в один файл "засунуть" и текст, и картинку.
Фуууууууууууууу..........
А! Чуть не забыл: зарнее спасибо :-)
← →
Плохиш © (2007-01-23 18:54) [1]
> Как создать свой формат файла?
Файл - это последовательный набор "кирпичиков" называемых байтами. Интерпретация этого набора является плодом больного воображения каждого сумасшедшего, решившего заняться программированием.
← →
tif © (2007-01-23 18:55) [2]
> Файл - это последовательный набор "кирпичиков" называемых
> байтами. Интерпретация этого набора является плодом больного
> воображения каждого сумасшедшего, решившего заняться программированием.
>
ПЕРЕФОРМУЛИРОВКА
Как создать последовательнеость байтов?
И как из этих байто-кирпичиков построить файл?
← →
Плохиш © (2007-01-23 18:59) [3]Из справки
var
FromF, ToF: file;
NumRead, NumWritten: Integer;
Buf: array[1..2048] of Char;
begin
if OpenDialog1.Execute then { Öffnen-Dialogfeld anzeigen }
begin
AssignFile(FromF, OpenDialog1.FileName);
Reset(FromF, 1); { Datensatzgröße = 1 }
if SaveDialog1.Execute then { Speichern-Dialogfeld anzeigen }
begin
AssignFile(ToF, SaveDialog1.FileName); { Ausgabedatei öffnen }
Rewrite(ToF, 1); { Datensatzgröße = 1 }
Canvas.TextOut(10, 10, "Copying " + IntToStr(FileSize(FromF))
+ " bytes...");
repeat
BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
BlockWrite(ToF, Buf, NumRead, NumWritten);
until (NumRead = 0) or (NumWritten <> NumRead);
CloseFile(FromF);
CloseFile(ToF);
end;
end;
end;
← →
tif © (2007-01-23 19:00) [4]наверное туплю, но как потом обратно?
← →
Ega23 © (2007-01-23 19:00) [5]Добавь к своему нику ещё одну f и поищи в яндексе разбор этого формата.
Как раз то, что тебе нужно.
← →
tif © (2007-01-23 19:02) [6]Удалено модератором
Примечание: Флудить завязываем
← →
Ega23 © (2007-01-23 19:07) [7]TIFF = Tag Image File Format.
Туда, при желании, хоть музыку можно запуздырить. Причём все граф.вьюеры будут показывать одну и ту же картинку. А твой специальный - эту же картинку с непотребными комментариями под матерные частушки.
И всё в одном файле.
← →
Amoeba © (2007-01-24 11:57) [8]Single File System:
http://www.aidaim.com/single_file_system.htm
Без исходников бесплатно.
← →
TIF © (2007-01-26 14:40) [9]Удалено модератором
Примечание: Флудить завязываем
← →
Сергей М. © (2007-01-26 14:45) [10]
> в мемо загоняется файл, а потом производится команда Memo.
> Lines.SaveToFile. Долго думал, почему эта программа не работает?
>
Прелюбопытно, что надумал-то ? В результате ?)
← →
TIF © (2007-01-26 14:47) [11]Удалено модератором
Примечание: Флудить завязываем
← →
Сергей М. © (2007-01-26 14:51) [12]
> вопроса не понял. надо читать до конца
>
Читай, я не возражаю
← →
TIF © (2007-01-26 14:53) [13]
> Читай, я не возражаю
дык не мне читать-то :-)
← →
Сергей М. © (2007-01-26 14:55) [14]
> TIF © (26.01.07 14:53) [13]
А, ну да .. "Чукча не читатель .." (С)
← →
TIF © (2007-01-26 14:58) [15]
> Чукча не читатель
Чукча - он писа"тель (знаком " отмечено ударение, а то понапишут тут)
Ветка стала напоминать чат...
← →
Сергей М. © (2007-01-26 15:00) [16]
> Ветка стала напоминать чат.
Проблемы-то - у тебя, чудо)
← →
JFK&MM_extramarital_son (2007-01-26 15:01) [17]Предварительно надо подать заявку в международный комитет по форматам файлов при ООН, ООП или при местном отделении Единой России и получить разрешение на разработку своего формата файла. Заплатив пошлину и приобретя shell иконку для нового типа.
Иначе ничего не выйдет.
← →
Сергей М. © (2007-01-26 15:02) [18]
> JFK&MM_extramarital_son (26.01.07 15:01) [17]
Не-а. Тут ышшо взятку надо дать. Без взятки - никак)
← →
TIF © (2007-01-26 15:06) [19]
> Предварительно надо подать заявку в международный комитет
> по форматам файлов при ООН, ООП или при местном отделении
> Единой России и получить разрешение на разработку своего
> формата файла. Заплатив пошлину и приобретя shell иконку
> для нового типа.
> Иначе ничего не выйдет.
между прочим я уже создал несколько СВОИХ форматов файла (без возможности хранить в них картинки, что очень плохо и что я хотел бы узнать) - особая структура файла, которую знает исполяемый ехе-файл.
> Не-а. Тут ышшо взятку надо дать. Без взятки - никак)
и взятки не понадобилось
← →
Ega23 © (2007-01-26 15:07) [20]
> какое извращённое восприятие окружающего мира
>
Я не понял, ты ветку ради флуда завёл???
Тебе был даден КОНКРЕТНЫЙ ответ на КОНКРЕТНЫЙ вопрос:
> Как создать свой формат файла? Суть в том, что в одном файле
> хранится, к примеру текст (досье человека) и другой файл
> (фото этого человека) + ещё и ещё файлы (если понадобится,
> например засунуть вордовский дкумент...). ООООчень большой
> + будет в том, что многие такой файл взломать просто не
> смогут (не считая меня :-) ), все данные будут сгруппированны,
> храниться вместе. Но программа, естественно, должна читать
> всё по-отдельности.
>
Так вот, всё это решает TIFF.
← →
Сергей М. © (2007-01-26 15:09) [21]
> TIF © (26.01.07 15:06) [19]
>
>
> между прочим я уже создал несколько СВОИХ форматов файла
Ну ты и крут, братец кролик)
И что, все эти "форматы" ты засандалил "с помощью блокнота" ?
Снимаю шляпу, сэр)
← →
Сергей М. © (2007-01-26 15:12) [22]
> Ega23 © (26.01.07 15:07) [20]
Да что уж там мелочиться ?)
Контейнерные форматы тех же документов MSOffice способны хранить все что угодно - хоть текст, хоть картинки, хоть песняк блатной, хоть черта лысого)
← →
TIF © (2007-01-26 15:12) [23]
> И что, все эти "форматы" ты засандалил "с помощью блокнота"
> ?
нет, с помщью компонента FileTextFormat
← →
TIF © (2007-01-26 15:13) [24]
> Так вот, всё это решает TIFF.
мне нужен СВОЙ формат
> Контейнерные форматы тех же документов MSOffice способны
> хранить все что угодно - хоть текст, хоть картинки, хоть
> песняк блатной, хоть черта лысого)
а как потом из них извлекать например картинки? и загружать в TImage? а?
← →
Сергей М. © (2007-01-26 15:13) [25]
> TIF © (26.01.07 15:12) [23]
Ай малацца !
Продолжай в том же духе)
← →
TIF © (2007-01-26 15:14) [26]
> Продолжай в том же духе)
а втом же мне и ненадо, а надо в духе "запихни в файл картинку и достань её потом"
← →
Ega23 © (2007-01-26 15:15) [27]
> мне нужен СВОЙ формат
>
Ты, похоже идиот. Ты вообще про этот формат почитал?
← →
Сергей М. © (2007-01-26 15:15) [28]
> TIF © (26.01.07 15:13) [24]
> а как потом из них извлекать например картинки? и загружать
> в TImage? а?
А каком кверху)
Оно тебя заботить не должно - тебя ведь заклинило на "своем" формате и "с помощью блокнота", вот и скатертью тебе дорога))
← →
TIF © (2007-01-26 15:20) [29]ладно, допустим я решил работать с TIFF форматом
КАК с ним программно взаимодействоать? Где найти примеры? Исходники? статьи? Ссылки?
--------------
И самое главное: как обеспечить безопасность данных? Ведь любой может взять и открыть TIFF файл!!! И посмотреть, что там! А оно мне надо???
← →
iXT © (2007-01-26 15:23) [30]Что для тебя есть "формат файла"?
Чего ты от него хочешь?
з.ы.
Читать [1] до полного просветления.
← →
Сергей М. © (2007-01-26 15:25) [31]
> TIF © (26.01.07 15:20) [29]
> допустим я решил работать с TIFF форматом
Первым делом ты должен проштудировать имеющиеся материалы по этому формату.
Тырнет большой, в нем предостаточно таких материалов.
Ты хоть пальцем пошевелил, чтобы найти хоть что-то на эту тему ?
> как обеспечить безопасность данных? Ведь любой может взять
> и открыть TIFF файл!!! И посмотреть, что там! А оно мне
> надо?
Порнуху распространяем ?)
← →
TIF © (2007-01-26 15:27) [32]
> Порнуху распространяем ?)
ага ЩАЗЗЗЗЗЗЗЗЗЗЗЗЗЗ!!!
---
читать надо
> Как создать свой формат файла? Суть в том, что в одном файле
> хранится, к примеру текст (досье человека) и другой файл
> (фото этого человека) + ещё и ещё файлы (если понадобится,
> например засунуть вордовский дкумент...). ООООчень большой
> + будет в том, что многие такой файл взломать просто не
> смогут (не считая меня :-) ), все данные будут сгруппированны,
> храниться вместе. Но программа, естественно, должна читать
> всё по-отдельности.
>
← →
clickmaker © (2007-01-26 15:37) [33]
> [32] TIF © (26.01.07 15:27)
ты что, издеваешься?
Записывать в файл и читать из него потоки байт в той же последовательности, что и записал, умеешь?
Больше ничего для "создать свой формат файла" и не требуется
← →
Сергей М. © (2007-01-26 15:37) [34]
> TIF © (26.01.07 15:27) [32]
Нет, ну ты, ей-ей, идиот, г-н Кулибин)
Любая существующая более-менее приличная СУБД давным-давно реализует все это и многое-многое другое.
← →
Virgo_Style © (2007-01-26 15:38) [35]жуть какая...
← →
Ega23 © (2007-01-26 15:38) [36]
> КАК с ним программно взаимодействоать? Где найти примеры?
> Исходники? статьи? Ссылки?
Ты уже утомил.
Последний раз говорю: набери в яндексе "Описание формата TIFF".
← →
Сергей М. © (2007-01-26 15:41) [37]
> многие такой файл взломать просто не смогут
- А это кто ?
- Это - неуловимый Джо.
- А почему неуловимый ?
- Да нахрен он кому нужен, чтобы его ловить !
← →
iXT © (2007-01-26 15:43) [38]Берешь всю эту кучу файлов. Архивируешь (хоть своим, хоть чужим; хочешь с жатием, хочешь без него). Приделываешь результату расширение типа .ёёё Вот тебе формат который ты просил. Можешь после этого поXORить весь файл дабы никто не открыл архиватором :)
← →
TIF © (2007-01-26 15:45) [39]
> Любая существующая более-менее приличная СУБД давным-давно
> реализует все это и многое-многое другое.
НЕНАВИЖУ чужиу СУБД. ужас, как ненавижу.
а как всё-таки защитить tiff?
← →
TIF © (2007-01-26 15:46) [40]
> Архивируешь
как это сделать программно?
вот так и ходим по кругу...
← →
Сергей М. © (2007-01-26 15:47) [41]
> НЕНАВИЖУ чужиу СУБД. ужас, как ненавижу
Напиши свою.
← →
TIF © (2007-01-26 15:47) [42]
> Напиши свою.
так вот, для этого мне и нужен свой формат файла.
от чего ушли...
← →
Сергей М. © (2007-01-26 15:49) [43]
> Для этого мне и нужен свой формат файла
Ну а блокнот-то причем !?
Тебе что, встроенного в делфи редактора мало ?)
← →
TIF © (2007-01-26 15:51) [44]> Ну а блокнот-то причем !?
какой блокнот? о блокноте речь не шла...
> Тебе что, встроенного в делфи редактора мало ?)
какой такой редактор??? поподробнее
← →
Сергей М. © (2007-01-26 15:54) [45]
> какой блокнот? о блокноте речь не шла
Мартышка к старости слаба ушами стала ?)
Вот цитата из твоего творчества чуть выше по тексту:
> открытие картинок с помощью блокнота
Ку ?
> какой такой редактор??? поподробнее
Обычный редактор текста.
← →
iXT © (2007-01-26 15:57) [46]
> TIF © (26.01.07 15:46) [40]
>
> > Архивируешь
>
>
> как это сделать программно?
И в чем тут проблемы? Или собственная лень мешает, либо...
Вообшем, сейчас советовался с Microsoft. Они сказали что никак низя, и что Windows неизвестные форматы будет просто удалять без предупреждения. Мотивировали тем, что инатче при двойном клике по файлу Windows будет виснуть от невозможности открыть неизвестный формат "блокнотом".
:)))))))))))))))))))
← →
TIF © (2007-01-26 16:07) [47]
> > открытие картинок с помощью блокнота
а потом я написал, что это ерунда
ИТАК подводим ИТОГИ:::
1) Берём картинку, разбиваем на биты, потом сохраняем вместе с текстом в файл, предварительно шифруя
2) Расширение файла ставим, например, .tifkin (естественно, стоко символов нежелательно) или .234 и сохраняем!!!
Готово
легко и просто
Кто считает не так???
← →
Сергей М. © (2007-01-26 16:14) [48]
> 1) Берём картинку, разбиваем на биты
Это как ?
Впрочем, тебе видней)... Но лучше таки на миллибиты - вражеская разведка будет в шоке)
> 2) Расширение файла ставим, например, .tifkin (естественно,
> стоко символов нежелательно) или .234
А уж если та самая вражеская разведка это увидит, то просто повесится тут же на месте)
> Кто считает не так?
Все так.
А собственно формат-то где твой новоиспеченный ?)
← →
Ega23 © (2007-01-26 16:14) [49]
> Кто считает не так???
я считаю не так.
Я считаю так:
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
← →
TIF © (2007-01-26 16:17) [50]
> А собственно формат-то где твой новоиспеченный ?)
а внутри что будет? структура. это и есть формат
а внутренности-то я вам и не покажу
могу только на примере показать, если надо
← →
Ega23 © (2007-01-26 16:18) [51]
> могу только на примере показать, если надо
>
Боже упаси!
← →
TIF © (2007-01-26 16:23) [52]
> Боже упаси!
мне лучше - никто никогда его не узнает (формат-то)
← →
TIF © (2007-01-26 16:29) [53]
> var
>
> FromF, ToF: file;
> NumRead, NumWritten: Integer;
> Buf: array[1..2048] of Char;
> begin
> if OpenDialog1.Execute then { Öffnen-Dialogfeld anzeigen
> }
> begin
> AssignFile(FromF, OpenDialog1.FileName);
> Reset(FromF, 1); { Datensatzgröße = 1 }
> if SaveDialog1.Execute then { Speichern-Dialogfeld
> anzeigen }
> begin
> AssignFile(ToF, SaveDialog1.FileName); { Ausgabedatei
> öffnen }
>
> Rewrite(ToF, 1); { Datensatzgröße = 1 }
> Canvas.TextOut(10, 10, "Copying " + IntToStr(FileSize(FromF))
> + " bytes...");
> repeat
> BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
> BlockWrite(ToF, Buf, NumRead, NumWritten);
> until (NumRead = 0) or (NumWritten <> NumRead);
> CloseFile(FromF);
> CloseFile(ToF);
> end;
> end;
> end;
а как всё-таки обратно???
и я вас закончу мучать :-)
← →
DrPass © (2007-01-26 16:29) [54]
> мне лучше - никто никогда его не узнает (формат-то)
Если найдешь обделенного умом человека, которого будет волновать формат твоего файла, познакомь. Мы ему в качестве благотворительности лечение оплатим
← →
Сергей М. © (2007-01-26 16:41) [55]
> внутри что будет? структура. это и есть формат
Да неужели ?!
Вот ведь новость-то)
И что тебе мешает продумать, разработать и документировать эту "структуру" ? С пом. того же "Блокнота" ?
> а внутренности-то я вам и не покажу
> никто никогда его не узнает (формат-то)
см. [37]
← →
Hint (2007-01-26 16:47) [56]Эта тема лучше всякого орешника =)))
Чтоб пост не был флудом:
Как уже и писали тебе будет проще всего скопировать нужные файлы в отдельную папку и сжать эту самую папку как-нибудь ZIP"ом (готовых бесплатных компонентов море).
← →
Сергей М. © (2007-01-26 16:52) [57]
> Hint (26.01.07 16:47) [56]
Не-а.
Предположим что я есть представитель вражеской разведки и я знаю форматы всех "как-нибудь ZIP"ов", и мне не составляет труда узнать, что же там какой-то TIF(C) захреначил в файл в формате "такого-то ZIP"а"..
Автор же, судя по его постам, при этом попросту удавится, проделав "титаническую" работу по "созданию своего формата с помощью блокнота" и узнав об этом)
А нам тут, вишь ли, на поминки скидываться придется))
← →
iXT © (2007-01-26 16:53) [58]
> Hint (26.01.07 16:47) [56]
TIF © (26.01.07 15:46) [40]
← →
Virgo_Style © (2007-01-26 16:54) [59]например,
<описатель><специфические данные><длина данных><данные>
<описатель><специфические данные><длина данных><данные>
<описатель><специфические данные><длина данных><данные>
...
где
<описатель> = "DUM" для пустышки, "NFO" для информации, "PIC" - для картинки, "DOC" для документа и т.д.
<специфические данные> = ничего для информации, "JPG" или "BMP" для картинки, имя документа - для документа и т.д.
<длина данных> = длина последующих данных.
<данные> = поток данных (структура с досье, bmp или jpg потоки и т.д.
Дарю, однако.
← →
Плохиш © (2007-01-26 16:54) [60]
> TIF © (26.01.07 16:29) [53]
> а как всё-таки обратно???
Ик...ик...ик...ааааа...оооо... Пардон, вылез из под стола...
А у меня архиватор есть, он архивирует любые файлы до 1 байта...
← →
Ega23 © (2007-01-26 16:57) [61]
> например,
> <описатель><специфические данные><длина данных><данные>
> <описатель><специфические данные><длина данных><данные>
> <описатель><специфические данные><длина данных><данные>
> ...
Только добавить ещё <Заголовок файла><Дата Создания><Байтовое смещение на следующий описатель>
По крайней мере я бы добавил.
← →
Elen © (2007-01-26 16:58) [62]
> Ega23
Я знаю что в TIFF можно загнать несколько картинок, но музыку и подобное... Может подскажеш как или чем (существующим, чтоб свое не лепить.)
← →
iXT © (2007-01-26 17:03) [63]
> Virgo_Style © (26.01.07 16:54) [59]
Он же секретный, а ты всем рассказал :)
← →
Сергей М. © (2007-01-26 17:03) [64]
> Elen © (26.01.07 16:58) [62]
Если TIFF есть формат сжатия/хранения без потерь (ч.г. не помню), то похрену что в нем хранить - хоть звук, хоть хрюк, хоть декларацию о незалежности)
← →
Elen © (2007-01-26 17:04) [65]
> многие такой файл взломать просто не смогут
Э-э. Так вот чего надебно автору. Защита. В чем проблема Перезаписывай файлы каким нибудь своим криптомейкером. ;)
← →
Elen © (2007-01-26 17:05) [66]
> Сергей М
Дык а есть проги которые уже такое творят с тифами - запихивают в него все что угодно и так же достают?
← →
TIF © (2007-01-26 17:06) [67]
> Эта тема лучше всякого орешника =)))
само собой, у нас всё высого качества
> например,
> <описатель><специфические данные><длина данных><данные>
> <описатель><специфические данные><длина данных><данные>
> <описатель><специфические данные><длина данных><данные>
> ...
> где
> <описатель> = "DUM" для пустышки, "NFO" для информации,
> "PIC" - для картинки, "DOC" для документа и т.д.
>
> <специфические данные> = ничего для информации, "JPG" или
> "BMP" для картинки, имя документа - для документа и т.д.
>
>
> <длина данных> = длина последующих данных.
> <данные> = поток данных (структура с досье, bmp или jpg
> потоки и т.д.
>
> Дарю, однако.
а по-русски???
> Как уже и писали тебе будет проще всего скопировать нужные
> файлы в отдельную папку и сжать эту самую папку как-нибудь
> ZIP"ом (готовых бесплатных компонентов море).
а потом любой откроет архивчик и пиши пропало
← →
TIF © (2007-01-26 17:07) [68]
> криптомейкером. ;)
можат, скриптомейкером? или как? и ваще, що це таке?
← →
Плохиш © (2007-01-26 17:08) [69]Всё, пойду выкручу из машины ремень безопасности и прикручу его к креслу...
← →
Сергей М. © (2007-01-26 17:09) [70]
> Elen © (26.01.07 17:05) [66]
Мне ч.г. по колено, есть такие или нет таких - это проблема автора)
Но только такой же идиот, как и Автор, будет подбирать "проги" в надежде выковырять из TIF-файла суперпуперсекретную инф-цию, засандаленную туда Автором.
← →
Сергей М. © (2007-01-26 17:10) [71]
> Плохиш © (26.01.07 17:08) [69]
Лучше уж ГРМ к ж..е)
← →
Ega23 © (2007-01-26 17:11) [72]
> Я знаю что в TIFF можно загнать несколько картинок, но музыку
> и подобное... Может подскажеш как или чем (существующим,
> чтоб свое не лепить.)
>
Существующего ничего не знаю. Естественно придётся лепить самому и кодер и декодер.
Я, честно говоря, этот формат ковырял году в 2002, так что в деталях особо не помню. Смысл был такой: есть заголовок файла, есть некая таблица, указывающая где в файле расположены Image File Directory (IFD). Каждая из этих директорий, в свою очередь, состоит из набора тэгов, часть из которых строго описана, а другая чать - оставлена за пользователем. Вот, с помощью таких пользовательских тэгов и можно любые данные туда зашивать. А текст это, другая картинка, XML или AVI - дело твоего кодера и декодера.
Любой графический вьюер, поддерживающий tiff-формат, должен уметь разбирать стандартный набор тэгов. А вот лично твой ещё может уметь разбирать собственные тэги.
Да, кстати: само изображение в тифе храниться построчно. А вот порядок этих строк в самом файле может быть абсолютно произвольным, главное, чтобы в IFD они в правильном порядке были описаны.
← →
Elen © (2007-01-26 17:13) [73]
> Сергей М.
Мне просто интересно - существуют ли такие. раньше я думала Tagged Image File это Группировочный Графический формат, но Image в данном случае переводила как "Картинка", поэтому и причисляла его к графическим, тем более что многие Рисовалки в Tiff сохраняют.
> можат, скриптомейкером?
Зашифруй файл по своему ключу - порули мануалы по криптографии.
← →
Ega23 © (2007-01-26 17:13) [74]Если кого интересует, могу описание формата выслать. Исходники моего "ковыряния" высылать не буду, т.к. во-первых стыдно за тот код, а во-вторых, я уже и сам не помню как оно там всё работало. :)
← →
Сергей М. © (2007-01-26 17:14) [75]
> Ega23 © (26.01.07 17:13) [74]
Лучше бы ты статью на эту тему на Мастаках оформил, нежели баловать барана новыми воротами)
← →
Elen © (2007-01-26 17:15) [76]
> Ega23
Во теперь ясно. (схоже с ID3 тегом в MP3). Спасибо за инфу ;)
← →
Ega23 © (2007-01-26 17:15) [77]
> Мне просто интересно - существуют ли такие. раньше я думала
> Tagged Image File это Группировочный Графический формат,
> но Image в данном случае переводила как "Картинка", поэтому
> и причисляла его к графическим, тем более что многие Рисовалки
> в Tiff сохраняют.
На самом деле, филосовский вопрос: а что есть Image? Лично я, как честый разработчик БД под MSSQL, отношусь как к бинарному набору данных. :)
← →
Elen © (2007-01-26 17:17) [78]
> Ega23
Да уж Ну не смейтесь но для меня привычнее Image = Picture, хоть это и не так, вот и попадаюсь на мелочах перевода :)
← →
Плохиш © (2007-01-26 17:19) [79]В jpeg в exif тоже можно чего угодно нафигачить. Вон PhotoShop туда такое пишет :-)
← →
Ega23 © (2007-01-26 17:20) [80]
> Лучше бы ты статью на эту тему на Мастаках оформил, нежели
> баловать барана новыми воротами)
Да я бы, может, и оформил бы. И даже кодер-декодер переписал бы уже начисто. Просто я разобрал тогда, вроде, десяток самых важных тэгов из что-то около сотни стандартных. Я тогда решал маленькую частную задачу и мне этого десятка тегов полностью хватило.
А если их десяток и оставить, то это уже не статья получится, а поделка флёновская. Да и описание формата в сети есть, надо только чуть-чуть мозг наморщить... :)
← →
Ega23 © (2007-01-26 17:21) [81]
> В jpeg в exif тоже можно чего угодно нафигачить. Вон PhotoShop
> туда такое пишет :-)
Да вроде в любой формат можно всего напихать. Я как-то сильно на эту тему не заморачивался.
← →
Сергей М. © (2007-01-26 17:26) [82]
> надо только чуть-чуть мозг наморщить
Золотые слова !
Жаль только Автор их не слышит)
← →
TIF © (2007-01-26 17:33) [83]
> Если кого интересует, могу описание формата выслать. Исходники
> моего "ковыряния" высылать не буду, т.к. во-первых стыдно
> за тот код, а во-вторых, я уже и сам не помню как оно там
> всё работало. :)
а самому-то стыдно
> Жаль только Автор их не слышит)
у меня уже складки дыбом встали от напряжения, а они тут криптографию разбирают
← →
Плохиш © (2007-01-26 17:36) [84]
> у меня уже складки дыбом встали от напряжения
Спермотоксикоз? Других напряжений пока не замечено...
← →
Ega23 © (2007-01-26 17:39) [85]
> а самому-то стыдно
А почему мне не должно быть стыдно за код, написанный студентом-второкурсником, фактически не имеющим никакого понятия о Delphi, VCL и ООП в целом, но построевшего кодер именно таким способом?
← →
Virgo_Style © (2007-01-26 18:21) [86]Ega23 © (26.01.07 16:57) [61]
Согласен, как минимум <смещение на следующий описатель> добавить стОит.
← →
Ega23 © (2007-01-26 19:14) [87]
> Согласен, как минимум <смещение на следующий описатель>
> добавить стОит.
>
Ну, с учётом, что длина блока данных известна - необязательно. Но: если хочется ещё что-то заложить (как в Tiff) - тогда да.
← →
Anatoly Podgoretsky © (2007-01-26 22:29) [88]Ну вы и потрепались классно сегодня.
← →
Плохиш © (2007-01-27 00:58) [89]
> Anatoly Podgoretsky © (26.01.07 22:29) [88]
> Ну вы и потрепались классно сегодня.
Мы ещё и в понедрюльник продолжим :-P Только веточку стоит в правильнуэ конференцию перенести ;-)
← →
GrayFace © (2007-01-27 09:47) [90]Вот тебе супер-формат:
type
TMyStorage = class(TComponent)
published
property Pictre: TPicture read FPicture write FPicture;
property Text: string read FText write FText;
// и т.д.
end;
var Storage:TMyStorage; Stream:TStream;
...
Stream.WriteComponent(Storage); // Пишем данные
Stream.ReadComponent(Storage); // Читаем данные
Ведь тебе не надо произвольных имен файлов в этом формате?
TIF © (26.01.07 15:27) [32]
> Порнуху распространяем ?)
ага ЩАЗЗЗЗЗЗЗЗЗЗЗЗЗЗ!!!
Что прямо ЩАЗ этим и занимаешся?)
TIF © (26.01.07 17:07) [68]
можат, скриптомейкером? или как? и ваще, що це таке?
Шифрование.
Сергей М. © (26.01.07 17:10) [71]
Лучше уж ГРМ к ж..е)
А что такое ГРМ?
← →
GrayFace © (2007-01-27 09:49) [91]GrayFace © (27.01.07 9:47) [90]
А что такое ГРМ?
А-а... Наверное, тоже что-то из разряда порнухи - тогда понятно, почему ты применять это собрался к ж[b]ен[/b]е.
← →
Смаг (2007-01-27 16:21) [92]TIF © (26.01.07 17:33) [83]
Денег дашь? А то у меня есть свой формат файла с исходниками само собой, могу продать.
← →
Vendict © (2007-01-27 19:15) [93]наконец то я понял, как это кататься по полу.... )))
Плохиш © (27.01.07 0:58) [89]
в правильнуэ конференцию перенести ;-)
"орешник" она называется )))
← →
@!!ex © (2007-01-27 19:35) [94]Помоему это стеб, автор не может быть настолько идиотом.
P.S.
А что мешает данные запакованные ZIP тупо запаролить?
← →
TIF © (2007-01-28 13:05) [95]Итак, он вернулся!!!!
Я, то есть...
Было время подумать (аж 5 дней), вот я и вернулся, и не впонедельник, как пророчили, а в воскресенье.
Почитал, поразбирал свои ошибки, прочистил мозги и пришёл к следующим выводам:
1) Текстовый файл - это хранилище символов, а символ - это, к примеру, 8 байт информации (или там 16, смотря какая кодировка). И если хочется создать свой формат файла,надо его писать на диск не в виде буковок, а в виде байтов, то бишь не надо обязательно кодировать элемент изображения (файла) восемью байтами, а надо как лучше: если на картинке всего 4 цвета, то и кодировать надо двумя битами, например
00 - красный
01 - жёлтый
10 - зелёный
11 - синий
2) Конечно, лучше сжимать файлы и ставить на них (архивы) пароли (придётся копаться и искать как :-((( ). но моя программа должна, например, устанавливаться на компе с 32 мб оперативки. да, там и win rar тормозит, а моя програмка тем более...
3) Протестировал способ создания своего "ТЕКСТОВОГО ФОРМАТА" - закодированного формата данных.
Типа есть строчка
привет
12 булок, 3 батона
А она кодируется
окенга
зщ ропенл ъй ьвюбсч
так что, формат-кодировка получился. Безопасность данных обеспечена.
3) Понял, в чём суть формата файла: определённое количество последовательностей байтов.
И вот вопрос: как на диск (на кластера диска, или как там, я уж не вдаюсь в подробности, а то совсем запутаюсь :-) ), записать биты? байты? чтобы они сложились в последовательность, которую потом можно назвать файлом и открывать с помощью моей программы? А в Windows е этот файл должен показываться значком с флажком (что означает - неизвестный формат файла, хотя впрочем все такой значок видели хоть раз в жизни)
Знаю, что сейчас многие скажут - нельзя так создавать файл!!!
Отвечу - как тогда создал файл следующий мистер:
> Смаг (27.01.07 16:21) [92]
> TIF © (26.01.07 17:33) [83]
> Денег дашь? А то у меня есть свой формат файла с исходниками
> само собой, могу продать.
Или он брешет?
Жду ответов. И плз, без мата, сдерживайтесь, господа!
===
PS: специально сходил к невропатологу :-) Никаких заболеваний не нашли, опухоли мозга тоже нет :-)))))))))
===
← →
Zeqfreed © (2007-01-28 13:28) [96]Не интересный развод. По сабжу:
tar cjf ./filename.tar.bz2 /path/to/data && ccencrypt -K password ./filename.tar.bz2
← →
DrPass © (2007-01-28 13:39) [97]
> И плз, без мата, сдерживайтесь, господа!
Честно, еле сдерживаюсь, ...растудыть твою так...
> Или он брешет?
Пес брешет
> Никаких заболеваний не нашли, опухоли мозга тоже нет :-)))))))))
Правильный ответ даст только вскрытие. Обязательно сделай на втором сеансе!
> И вот вопрос: как на диск (на кластера диска, или как там,
> я уж не вдаюсь в подробности, а то совсем запутаюсь :-)
> ), записать биты? байты? чтобы они сложились в последовательность,
> которую потом можно назвать файлом и открывать с помощью
> моей программы?
/*Тихонько матерясь под нос*/ как угодно. Любая операция записи пишет туда биты, байты... и они складываются в последовательность, которую потом можно назвать файлом. И это делают волшебные заклинания Memo1.Lines.SaveToFile, и Bitmap.SaveToFile, и writeln, и blockwrite, и WriteFile и много-много других.
← →
Anatoly Podgoretsky © (2007-01-28 14:01) [98]> TIF (28.01.2007 13:05:35) [95]
> PS: специально сходил к невропатологу :-) Никаких заболеваний не нашли, опухоли мозга тоже нет :-)))))))))
Попробуй сменить врача, пройти томографию.
← →
Kostafey © (2007-01-28 14:34) [99]Вопрос почти по теме.
Можно ли как-нибудь картинку в xml сохранить ?
ну и соответственно наверное музыку также.
Секретности никакой-смотри кто хошь - не жалко (сумасшедшего просмотреть этот бред вручную найти все равно не найти).
Тоесть наверное, будет достаточно просто побайтово записать содержимое файла между двумя тегами.
Правда опять встает вопрос как из прочитанный набор быйт в TImage отобразить ?
← →
antonn © (2007-01-28 14:40) [100]
> Тоесть наверное, будет достаточно просто побайтово
>записать содержимое файла между двумя тегами.
> Правда опять встает вопрос как из прочитанный набор
> быйт в TImage отобразить ?
прочитать байты м/у двумя тегами в TmemoryStream и грузануть в Image
← →
Virgo_Style © (2007-01-28 14:43) [101]Все. Больше не верю.
← →
GuAV © (2007-01-28 17:26) [102]> Вопрос почти по теме.
> Можно ли как-нибудь картинку в xml сохранить ?
> ну и соответственно наверное музыку также.
Наверное можно в CDATA хранить, предварительно перекодировав, чтобы не было недопустимых символов и комбинаций.
Есть такой вариант: zip в котором xml и другие данные. По этому пути пошли и разработчики MS Office, OpenOffice.Org, Google Earth и, возможно, ещё кто-то. И я кстати тоже на этом остановился (я тут спрашивал несколько месяцев назад про формат, могу прислать ту ветку)
← →
Дмитрий Белькевич © (2007-01-28 17:40) [103]
> 3) Понял, в чём суть формата файла: определённое количество
> последовательностей байтов.
>
> И вот вопрос: как на диск (на кластера диска, или как там,
> я уж не вдаюсь в подробности, а то совсем запутаюсь :-)
> ), записать биты? байты? чтобы они сложились в последовательность,
> которую потом можно назвать файлом и открывать с помощью
> моей программы? А в Windows е этот файл должен показываться
> значком с флажком (что означает - неизвестный формат файла,
> хотя впрочем все такой значок видели хоть раз в жизни)
>
> Знаю, что сейчас многие скажут - нельзя так создавать файл!
> !!
var
f: file of byte;
begin
AssignFile(f, "c:\1.bin"); //название файла
Rewrite(f); //перезапишем файл
Write(f, 1); //запишем три байта
Write(f, 2);
Write(f, 3);
CloseFile(f);
end;
Не заморачивайся с дисками, кластерами итд. Диска может не быть, кластеров тоже. Файл - создастся, и три байта последовательно запишуться, главное, что бы в сиситеме было устройство C.
← →
TIF © (2007-01-29 15:56) [104]
> var
> f: file of byte;
> begin
> AssignFile(f, "c:\1.bin"); //название файла
> Rewrite(f); //перезапишем файл
> Write(f, 1); //запишем три байта
> Write(f, 2);
> Write(f, 3);
> CloseFile(f);
> end;
====
хоть я это и знал, но всё равно спасибо. Понял, в чём суть формата файла, суть записи байтов. Всё!!! УРА!
Надеюсь, больше писать не буду. В ЭТОЙ ветке.
PS: томографию я сделал. Всё ок! Злопыхатели, злопыхайте! А я здоров, как две тысячи семь коров! кстати, только что писал олимпиаду по математике "третье тысячелети". не сказать, что написал отлично, но неплохо. Через недельку-другую будут известны результаты.
всё, пошел ломать винду :-))))
← →
Сергей М. © (2007-01-29 16:16) [105]
> только что писал олимпиаду
> Через недельку-другую будут известны результаты
Гомер нервно курит в сторонке)
← →
TIF © (2007-01-29 16:23) [106]Удалено модератором
Примечание: Флудить завязываем
← →
Сергей М. © (2007-01-29 16:25) [107]
> TIF © (29.01.07 16:23) [106]
И все же уточни результаты томографии.
← →
alien1769 © (2007-01-29 17:32) [108]Автору:
бесплатно даю редактор файла шрифтов.
Если применить могзи.ехе то можно сделать собственный формат.
Удачи. Только осторожно а то мозги.ехе могут выполнить не допустимую ошибку и будут закрыты.
Привожу текст програмки на паскале в следующем посту.
← →
alien1769 © (2007-01-29 17:34) [109]// Editor for vector fonts type "CHR" Borland International
uses
Crt,
Graph,
F_GrText,
F_Mouse;
type
pathstr= string[79];
TChar4 = array [1..4] of Char;
Структура заголовка шрифта
TFontHead = record case Byte of
0: (FontFileID: TChar4);
1: (BorlandID : array [1..128] of Byte) end;
Блок параметров шрифта
TFontPara = record case Byte of
0: (ParPrefix : Char; Символ "+"
CharsCount : Word; Число символов в шрифте
Reserv1, Не используется
FirstChar : Byte; Код первого символа
DataOffset : Word; Смещение до векторных
команд первого символа
FillFlag, Флаг заливки
UpperMargin, Высота символов
Reserv2 : Byte; Не используется
LowerMargin: ShortInt; Нижняя кромка
Reserv3 : array[1..5] of Byte Не используется );
1: (H2 : array [1..16] of Byte) end;
TOffst = array [0..255] of Word; Смещения
TWidth = array [0..255] of Byte; Ширины
TChars = array [0..255] of Pointer; Данные
TLengD = array [0..255] of Word; Длина
AW = array [1..434] of Word;
Векторы рабочего поля
TCooE = record x1, y1, x2, y2 : Integer
end;
TMouseMask = array [0..1, 0..15] of Word;
var
FontHead : TFontHead; Заголовок файла
FontPara : TFontPara; Параметры шрифта
NVecE, Количество векторов в WE
FileSize, Длина загружаемой части файла
HeaderSize : Word; Смещение блока параметров
FName : Pathstr; Имя файла
F : file; CHR-файл
Widths : TWidth; Таблица ширин
ws : Array[0..7,0..31] of byte absolute widths;
LengD : TLengD; Длина данных в байтах
ls : Array[0..7,0..31] of word absolute lengd;
Chars : TChars; Указатели на данные
cs : Array[0..7,0..31] of pointer absolute chars;
Offsets : TOffst; Таблица смещений
ds : Array[0..7,0..31] of word absolute offsets;
MaxW, Максимальная ширина символа
MaxH, Полная высота символа
AFileSize : Byte; Положение FileSize
xt, yt, Левый верхний угол таблицы символов
dxt, Ширина клетки таблицы символов
dyt, Высота клетки
xr, yr, Координаты окна повтора
xe, ye, Левый верхний угол WE
xe2, ye2, Правый нижний угол WE
yb, Ордината базовой линии
WidthX, Правая граница символа
dxe, Ширина клетки WE
dye, Высота клетки WE
dxm, dym : Integer; Границы мыши в рабочем поле
VecE : array [1..250] of TCooE; Векторы в WE
WR : Pointer; Образ пустого окна повтора
MouseF : Boolean; Флаг формы указателя мыши
CurM, Стандартная маска указателя
CurE : TMouseMask; Маска в рабочем поле
Страницы: 1 2 3 вся ветка
Форум: "Прочее";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
Память: 0.79 MB
Время: 0.06 c