Sachin Makwana Ответов: 1

Можно ли получить имя файла из байтового массива?


https://www.codeproject.com/Questions/1187473/How-to-save-bytearray-to-PDF[^]

Я работаю над проектом, в котором мне нужно хранить байтовый массив в формате PDF.

После некоторых исследований я смог получить тип файла массива байтов.

Можно ли получить имя файла из байтового массива?

Что я уже пробовал:

Я пробовал методы из этой ссылки.
http://stackoverflow.com/questions/8741968/get-file-name-from-byte-array-or-stream[^]

Он бросает исключение "Ссылка на объект не установлена на экземпляр объекта."

Richard MacCutchan

"Можно ли получить имя файла из массива байтов?"
Только если массив байтов содержит имя файла в первую очередь. Массив байтов - это просто массив байтов, которые ничего не значат, если вы не знаете точную структуру его содержимого.

1 Ответов

Рейтинг:
8

OriginalGriff

Если вы пробовали методы с другого сайта, то самым разумным было бы задать вопрос человеку, написавшему код, а не совершенно другому сайту.
Второй наиболее разумной вещью было бы показать код, который вы пробовали-как вы его пробовали, - скопировав его в свой вопрос на другом сайте. Без этого все просто гадают, что именно вы сделали...
Третья наиболее разумная вещь (но то, что я сделал бы в первую очередь) - это использовать отладчик, чтобы точно посмотреть, что происходит, когда я запускаю код.

Но ... если у вас есть массив байтов, и это все, у него нет имени файла - они доступны только в файловой системе операционной системы для реальных файлов, и массив байтов не имеет никакого файла, связанного с ним, даже если он был прочитан или записан в файл. Подумайте об этом: когда вы меняете имя файла, оно вообще не изменяет содержимое файла - и массив байтов-это просто содержимое файла без какого-либо другого "оберточного" материала, который вы можете получить с помощью filestream. Итак, предположим, что вы пытаетесь привести массив байтов к потоку и предполагаете, что это даст вам имя файла. Не будет.