0

在 Windows 上使用 Java 格式化 USB 驱动器(> 32Gb)的最佳方法是什么?

我尝试使用该format功能:

Process p = Runtime.getRuntime().exec("CMD /C format f: /FS:FAT32 /Q /X /Y");

但是驱动器的大小限制为 32Gb。我的 USB 驱动器大于 100Gb。

我可以使用 JNI 来做到这一点,还是会受到 32Gb 的限制?

有没有图书馆可以做到这一点?我找到了fat32-lib,但它似乎不可靠并且没有文档。

谢谢

4

3 回答 3

1

如果您继续使用format,我认为您将无法避免Microsoft在所有基于 WinNT 的操作系统 (Win2K+)上对 FAT32 施加的 32 GB 限制:

FAT16 和 FAT32 不能很好地扩展。随着卷变大,文件分配表也变大,这显着增加了 Windows 2000 计算系统重新启动时引导卷上有多少可用空间的时间。

因此,您不能使用格式化实用程序创建大于 32 GB 的 FAT32 卷。但是,Windows 2000 Fastfat 驱动程序使您能够装载并完全支持大于 32 GB 的 FAT32 卷。

您可能可以使用另一种 FAT32 实现来避免此限制,但我不确定是否存在适用于 Windows 的限制(我没有找到一个谷歌搜索)。或者您可以使用 WinNT 之前的 Windows,例如 Windows 98 或 Millenium Edition,但我认为这不是一个好主意。

于 2013-12-10T10:44:06.613 回答
1

尝试这个 :

http://www.ridgecrop.demon.co.uk/index.htm?fat32format.htm

这是用于格式化超过 32 GB 限制的 FAT32 驱动器的第 3 方工具。它具有命令行和 GUI 模式。

通过Windows 上的本机“格式化”命令,无法超过 FAT32 驱动器的 32 GB 限制。

于 2013-12-10T10:56:29.640 回答
0

尝试这个,

Process p = Runtime.getRuntime().exec("CMD /C format f: /FS:NTFS /Q /X /Y");

它会解决你的问题..NTFS

于 2014-09-12T17:26:34.343 回答