Возможно ли получить имя файла из байтового массива или потока? Я не хочу сохранять файл. Я просто хочу получить имя.Получить имя файла из байтового массива или потока
ответ
Если Stream
фактически FileStream
, то это может быть доступны литьем для FileStream
и доступа к .Name
собственности:
Stream stream = ...
FileStream fs = stream as FileStream;
if(fs != null) Console.WriteLine(fs.Name);
Однако в общем случае: нет, это не доступный. A byte[]
Конечно, не имеет понятия имени файла и большинства других типов потоков. Аналогично, базовый поток FileStream
, который обертывается другими потоками (сжатие, шифрование, буферизация и т. Д.), Не будет предоставлять такую информацию, несмотря на то, что основной поток (несколько слоев вниз) является файлом.
Я бы обработал имя файла отдельно.
+1 Никогда не заметили это свойство раньше, хотя я вряд ли когда-либо его использую lol –
Привет @Marc, спасибо за ваше прекрасное объяснение. Я попытаюсь опубликовать результат. – Gus
Привет, В wcf я возвращаю FileStream, но у клиента я получаю MessageBodyStream. Какие-либо предложения? – Gus
Нет, это невозможно (хорошо, так что это возможно на классе FileStream
, узнайте что-нибудь новое каждый день!).
Массив байтов или поток представляет содержание файла, а не Windows, метаданных о файле.
Существует множество прямых способов сохранить эту информацию, но, не зная больше о вашей ситуации, я не могу предложить решение.
Привет @ Адам, я понимаю. Спасибо за вашего помощника. – Gus
Вся информация о файле (например, имя, расширение и т. Д.) Является частью метаданных для фактического файла. Байт-массив будет содержать только фактические данные. Возможно, если сам массив байтов содержит метаданные (пример xml-файла) ... однако вам нужно знать тип и, в частности, где искать.
Привет @Code, Спасибо за вашего помощника. – Gus
- 1. FormHttpMessageConverter имя файла из байтового массива
- 2. Создание байтового массива из потока
- 3. Хранение файла в виде байтового массива или потока в объекте?
- 4. Загрузка Flash-фильма из потока памяти или байтового массива
- 5. Android: получить высоту/ширину из байтового массива или файла
- 6. Получить имя файла из потока (загрузка файла)
- 7. Печать файла XPS из байтового потока
- 8. Получение байтового массива вместо сохранения байтового массива в виде файла
- 9. Загрузка трехмерного байтового массива из .raw-файла
- 10. Чтение данных для байтового массива из файла
- 11. C# Сохранение двоичного потока (или байтового массива) в ресурсах
- 12. Получить начальную позицию байтового блока из байтового массива
- 13. Как получить побайтно из байтового массива
- 14. Найти свойства PCM из сохраненного байтового потока
- 15. Получить последние байты из байтового массива
- 16. Java получить расширение изображения из байтового массива
- 17. PHP - получить изображение из байтового массива
- 18. Использование TinyXML поверх байтового потока вместо файла
- 19. Получить имя для файла из массива python
- 20. Инициировать загрузку файла из байтового потока в Flex
- 21. Parquet Writer для буфера или байтового потока
- 22. запись и чтение из байтового потока
- 23. Получить шестнадцатеричную строку байтового массива
- 24. Нет способа получить поток байтового массива
- 25. Создание байтового массива из строки vs из файла
- 26. Чтение из файла или потока
- 27. Python получает метаданные медиафайлов из байтового массива
- 28. java - получить ключ от байтового массива
- 29. Как создать изображение из байтового массива
- 30. Запись файла из байтового массива в zip-файл
Hi @mekici, является .doc. – Gus