Определение расширения файла с помощью FileStream

Есть ли способ узнать тип FileStream. У меня есть функция, которая принимает объект FileStream, и я хочу определить расширение файла на основе этого FileStream.

Ответы

Ответ 1

 string extension = Path.GetExtension(myFileStream.Name);

Ответ 2

Если поток действительно является FileStream, вы должны иметь возможность сделать следующее

var ext = Path.GetExtension(fileStream.Name);

Если это простой старый Stream, хотя, как правило, невозможно получить расширение, так как Stream может быть создан для любого потока байтов. Он не должен иметь файл резервной копии.

Обновление

Как отметил Chris, в комментариях есть еще один вопрос, который имеет отношение к этому обсуждению. В нем обсуждается эвристика для определения типа a byte[], которая затем может быть отображена на вероятную оригинальную подпись.

Он ни в коем случае не является надежным, но может быть вам полезен.

Ответ 3

Да, используя имя файла, возвращается .txt (включая .):

var path = myFileStream.Name;
return Path.GetExtension(path);