У меня есть файл javascript как встроенный ресурс в сборке, и я пытаюсь использовать Stream из «System.Reflection.Assembly.GetExecutingAssembly(). GetManifestResourceStream (« someName »); для создания нового объекта FileInfo. Моя путаница заключается в том, как использовать поток для создания FileInfo. Если кто-нибудь может мне помочь в этом, я был бы очень благодарен. Я уверен, что это, наверное, что-то легкое, но легко, как правило, я всегда пропущу.Как создать новый файл из FileStream?
ответ
Необходимо создать файл, затем прочитать поток ресурсов и записать поток файлов.
Итак, я хочу создать новый файл, используя что-то вроде File.Create ("pathToFolder"). Затем используйте Writer для записи потока в файл. – jhorton
Или просто сделайте свой собственный входной поток.Read/outputStream.Write loop. –
+1 для ответа на вопрос, стоящий за вопросом. –
Вы не можете. Поскольку у вас есть Stream, а FileStream наследуется от Stream, это не означает, что все экземпляры Stream являются экземплярами FileStream (и, в дополнение, имеют файлы, которые являются источником потока).
Это не имеет смысла, что Stream возвратил из вызова . GetManifestResourceStream будет иметь ассоциированную с ним FileInfo, так же как NetworkStream не будет иметь связанный с ним экземпляр FileInfo.
Если вам действительно нужна FileInfo, вам, вероятно, придется скопировать данные из встроенного ресурса в файл в файловой системе. This question имеет пример кода.
@jhorton: Вам нужно быть более конкретным в отношении того, что вы пытаетесь сделать, и почему вам нужна FileInfo или верьте, что он связан с вашим потоком. – casperOne