![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| korotin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 1.9.2008 Репутация: нет Всего: 1 |
Здравствуйте!
Подскажите пожалуйста, как определить формат файла. Столкнулся с проблемой: пользователь выбирает файл, причем имя выбранного файла я подставляю свое, но формат необходимо сохранить...пользователь может назвать файл "file.name", где file.name - имя файла, в котором не указан формат. Как можно определить формат любого файла, причем не по его названию, а прочтя данные из самого файла??? Заранее спасибо! Это сообщение отредактировал(а) korotin - 3.10.2009, 22:54 |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: нет Всего: 130 |
Нечто подобное обсуждали в теме по билдеру.
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| korotin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 1.9.2008 Репутация: нет Всего: 1 |
ну не совсем, там определяется, файл текстовый или нет, а мне надо формат(расширение), просто узнать GIF, TXT, PNG, DOC, а может это архив, значит RAR, ZIP...т.е. передо мной не стоит задача определить картинка это или нет, текст это или нет. А имеют ли файлы любого формата, какой нить стандартный заголовок из которого можно выцепить расширение этого файла. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: нет Всего: 130 |
Конечно, имеют, можешь сам поизучать нужные тебе форматы. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| sergioK |
|
|||
|
Бывалый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 207 Регистрация: 15.2.2008 Репутация: нет Всего: нет |
Ну а событие когда юзер меняет файл на свое имя поймать нельзя ?, потом имя файда вы же где то даете , так может это имя файла вписать в сам файл, скажем в строку с номером 100 или в формате #@file name@# , ?а потом при чтении данных это имя и прочесть, ?теперь еще вопрос был у вас файл .DOC а юзер поменял его на .txt и как вы узнаете что это был док ведь теперь ваш анализатор (допустим что вы его написали) вам выдаст что файл .txt а то что это раньше был дос никому уже неизвестно . |
|||
|
||||
| korotin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 1.9.2008 Репутация: нет Всего: 1 |
Пользователь загружает файл со своего компа на сервер, что он там с ним делает я узнать не могу!!!! Зачем мне Ваши вопросы был ДОК стал ТХТ, у меня у самого такие же вопросы возникают...ПОЭТОМУ Я РЕШИЛ СПРОСИТЬ МОЖЕТ ЕСТЬ КАКАЯ НИТЬ БИБЛИОТЕКА ДЛЯ ОПРЕДЕЛЕНИЯ РАСШИРЕНИЯ ФАЙЛА ПО ТЕЛУ ЭТОГО ФАЙЛА????????????? Ну а если нет, то придется написать класс только для основных форматов, которые мне нужны, причем для каждого формата есть символы инициализации(почти для каждого), ну вот по ним и придется определять(((( |
|||
|
||||
| sergioK |
|
|||
|
Бывалый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 207 Регистрация: 15.2.2008 Репутация: нет Всего: нет |
дак эти символы прпадают когда юзер переименовывает файл ,т,е повторюсь был файл НТМL а юзер его поменял на dос ,вы в своей библиотеке получите что файл есть Dос , а хотели бы получить что он на самом деле HТml - но этой информации уже нигде нет , потому что мета дата создаеться по расширению - это делает операционная система, по крайне мере виндус файла, поменял его - поменялась мета дата, вам же нужно чтобы кто-то запомнил старую мета дату ,т,е, расширение, т,е, получаеться что ваша библиотека вам ничего не даст, может я чего то не понял, но то что вы хотите решения не имеет , сорри что огорчил |
|||
|
||||
| olexande |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 25 Регистрация: 25.11.2004 Где: Киев Репутация: нет Всего: нет |
"тип файла" в теле файла зашит только в некоторых "типах" файлов ...
Если нужно разбирать (определять) тип файла по телу самого файла, а не по расширению, то и соотв. нужно на каждый интересующий формат файла исследовать его структуру и искать его "родные отпечатки". У безопасников есть аналогия - fingerprint - "отпечатки" ОС - по заголовкам яда пакетов tcp/ip можно в некоторых случаях определить что за ОС и ПО стоит на удалённой системе ... |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |