Как создать виртуальный файл и поместить в него контент (поток) с помощью Platform.VirtualFileSystem?

Во-первых, я не совсем понимаю, так называемые Platform.VirtualFileSystem могу сделать это То, что я хочу для виртуальной файловой системы - это как-то создать виртуальный файл из Stream (что я уже имел). Система (ОС) сможет получить доступ к этому виртуальному файлу, как если бы он был реальным файлом (прозрачно).

После просмотра иерархии классов Platform.VirtualFileSystem Я не мог полностью найти что-либо, связанное с тем, что я хочу. Похоже, что я могу связать реальный системный файл с виртуальным файлом, но здесь у меня даже нет реального системного файла, у меня есть только Stream,

У кого-нибудь есть простой пример, иллюстрирующий это? Как я уже говорил, я даже не знал, поможет ли мне эта библиотека. Поэтому, если у вас есть другие альтернативы, которые могут решить мою проблему, пожалуйста, предложите.

1 ответ

Я скажу, что вы смотрите не на тот инструмент. Platform.VirtualFileSystem это абстракция различных fs для программы, которая ссылается на Platform.VirtualFileSystem,, Похоже, что эта абстракция не экспортируется в другие программы.

Что вам нужно, это полная файловая система. Но обратите внимание, что полная файловая система - это полный диск. Вы не создаете файл, вы создаете виртуальный диск с файлом. Смотрите, например, докан.

Одна из вещей, которые он может сделать:

Данные как файл

Легко монтируйте любые данные в виде виртуального файла и получайте к ним прозрачный доступ из всех ваших приложений Windows. Это может быть буквально что угодно: файлы из других мест, хранящиеся локально или удаленно в облаке... Творчество будет вашим пределом.

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

Другие вопросы по тегам