用Python编程虚拟文件系统的最简单方法

问题描述:

我想用Python编程Windows中的虚拟文件系统。用Python编程虚拟文件系统的最简单方法

也就是说,一个Python中的程序,其界面实际上是一个“资源管理器窗口”。您可以创建&来操作类似文件的对象,而不是在我的程序中管理的常规文件,而是远程存储或加密或压缩或版本化,或者我可以用Python做的任何事情。

最简单的方法是什么?

+3

首先。列出您想要存档的完整列表。然后选择该列表中的第一个项目,如果您对该特定项目有疑问,您可以在此寻求解决方案。现在这个问题太广泛了。 – OscarRyz 2009-08-25 01:19:58

+0

我同意奥斯卡。它看起来好像根本就没有构建文件系统,而是一个窗口,就像一个窗口,它可以读写其他现有的文件系统,比如FTP站点(远程)或者压缩或加密卷(zip文件或加密库的功能)。 – Kibbee 2009-08-25 01:24:35

+6

我写了我正在建设(或想要建立)**虚拟**文件系统 – flybywire 2009-08-25 01:35:47

虽然也许不是相当成熟,但(遗憾的是我没有与它的第一手经验),pywinfuse看起来正是像你在找什么。

如果您正在尝试编写虚拟文件系统(我可能会误解您) - 我会查看容器文件格式。 VHD与HDI和(嵌入式)OSQ一起记录良好。基本上有两件事你需要做。一个是你需要决定一个文件/容器格式。之后,就像编写API来操纵该容器一样简单。如果你想它在互联网上进行操作,选择一个传输协议,然后只写监听某个端口上,并操纵这个容器使用API​​

它需要一个服务(将将模拟一个文件系统驱动程序)是Windows本机?至少有一个协议可以被Windows资源管理器浏览,并由免费的Python库提供服务:FTP。把程序放在pyftpdlib后面,你就完成了。

看看Dokan Windows用户模式文件系统。有Ruby,.NET(和第三方的Java)绑定可用,我认为编写python绑定也不困难。

您可能也有兴趣PyFilesystem;

用于Python

PyFilesystem一个文件系统抽象层是用于文件系统的抽象层。就像Python的类文件对象提供访问文件的常用方式一样,PyFilesystem提供了访问整个文件系统的通用方式。您可以编写独立于平台的代码来处理本地文件,该代码也可以与任何支持的文件系统(zip,ftp,S3等)一起使用。

什么主页上的描述不做广告的是,你可以再expose再次这个抽象的文件系统,其中包括SFTP,FTP(虽然currently disfunct,可能fixable)和dokandito)以及fuse

+0

的OP寻找相反的,我相信 - 一种方式来揭露他的数据作为文件系统。 – 2016-01-08 23:32:19

+0

@ EugeneMayevski'EldoSCorp这就是PyFilesystem的'expose'子模块做 - 我的回答也许可以从一些冗长受益,我会在以后进行扩展上 – 2016-01-09 19:48:51

+1

@ EugeneMayevski'EldoSCorp我加了一些文字 - 我不知道网页没有按”不要提到揭示函数,因为我通过明确地搜索Python和Dokan的东西来找到'PyFilesystem' ... – 2016-01-11 06:17:30