我想用Windows编写Windows中的虚拟文件系统。
也就是说,Python中的一个程序,其界面实际上是一个“资源管理器窗口”。你可以创建&操作类似文件的对象,但不是作为常规文件在硬盘中创建,而是由我的程序管理,比如远程存储,加密或压缩或版本化,或者我用Python做的任何事情。
最简单的方法是什么?
答案 0 :(得分:8)
虽然可能尚未成熟(不幸的是我没有第一手经验),但pywinfuse看起来完全就像你正在寻找的那样。
答案 1 :(得分:3)
查看Dokan Windows的用户模式文件系统。有Ruby,.NET(和第三方Java)绑定可用,我认为编写python绑定也不困难。
答案 2 :(得分:2)
它需要是Windows原生的吗?至少有一个协议可以由Windows资源管理器浏览,并由免费的Python库提供服务:FTP。将你的程序粘贴在pyftpdlib后面就完成了。
答案 3 :(得分:1)
如果您正在尝试编写虚拟文件系统(我可能会误解您) - 我会查看容器文件格式。 VHD与HDI和(嵌入式)OSQ一起被充分记录。基本上你需要做两件事。一个是你需要决定文件/容器格式。之后,就像编写API来操作该容器一样简单。如果您希望通过互联网进行操作,请选择传输协议,然后编写一个服务(将模拟文件系统驱动程序),该服务侦听某个端口并使用您的API操作此容器
答案 4 :(得分:1)
您可能对PyFilesystem;
感兴趣Python的文件系统抽象层
PyFilesystem是文件系统的抽象层。与Python的类文件对象提供访问文件的常用方式相同,PyFilesystem提供了访问整个文件系统的常用方法。您可以编写与平台无关的代码来处理本地文件,这些代码也适用于任何支持的文件系统(zip,ftp,S3等)。
主页上的描述没有通告的是,您可以再次expose将此抽象作为文件系统,其中包括SFTP,FTP(尽管currently disfunct,可能是fixable)和dokan(dito)以及fuse。