Python 确定文件是否位于NTFS文件系统上
是否有Windows API用于确定某个文件(路径)是否位于NTFS文件系统上Python 确定文件是否位于NTFS文件系统上,python,windows,ntfs,Python,Windows,Ntfs,是否有Windows API用于确定某个文件(路径)是否位于NTFS文件系统上 如果可以从现有的Python API中推断出这一点,那就更好了。不知道如何在Python中做到这一点,但我认为调用C函数将很容易 因此,在C open file handle bu中,您将检索此类文件的句柄。然后调用并检查lpFileSystemNameBuffer变量中的“ntfs”字符串。在python中,您可以执行以下操作: import win32api t = win32api.GetVolumeInfor
如果可以从现有的Python API中推断出这一点,那就更好了。不知道如何在Python中做到这一点,但我认为调用C函数将很容易 因此,在C open file handle bu中,您将检索此类文件的句柄。然后调用并检查lpFileSystemNameBuffer变量中的“ntfs”字符串。在python中,您可以执行以下操作:
import win32api
t = win32api.GetVolumeInformation(path)
print t[-1]
如果路径位于该文件系统类型上,将打印ntfs
(基于Yakeen的回答,但由于我没有windows计算机,因此未经测试)根据需要,您可以使用GetFileAttributes并检查ntfs文件属性常量。相关的就是这样,但这种方式在重新分析点(如装入的卷作为目录)上不起作用,这就是为什么在文件句柄上工作更安全。你说的Mox到底是什么意思?所有这些属性都只在特殊情况下出现。我的意思是,一些属性,如文件属性加密或文件属性稀疏文件,仅在NTFS卷上可用。这些属性可以用作提示,以确定文件是否位于NTFS文件系统上。嗯,刚才注意到,此文件系统上所需的最低Windows版本是VistaIn早期版本,您可以使用GetVolumeInformation函数,因为NTFS还不支持重分析点。是的,问题是它需要一个不太方便的根路径,不过还是谢谢你。然后你可以再低一层,使用ntdll.dll中的ZWQueryVolumeInformation文件,它在XP+中存在。GetVolumeInformationByHandleW只是转发到此函数。看见