我们的Android平板电脑(版本4.0.3)中有一个USB端口。
Pendrive文件系统格式
当Pendrive文件系统格式为FAT32
文件已成功创建时。但是当文件系统格式为NTFS
时,我收到错误消息为open failed: EACCESS (Permission denied)
。
我需要在USB Pendrive中创建一个新文件。我试过我的示例代码是
Button createFile = (Button) findViewById(R.id.createFile);
createFile.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
try
{
File root = new File("/mnt/usbhost1");
Runtime.getRuntime().exec("chmod 777 " + root.getAbsolutePath());
File myFile = new File(root,"createNew.txt");
myFile.createNewFile();
Toast.makeText(getBaseContext(), "Done Creating File", Toast.LENGTH_SHORT).show();
}
catch (Exception e)
{
Toast.makeText(getBaseContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
此处/usbhost1
是Android平板电脑USB路径。哪里弄错了。如何从NTFS
文件系统格式创建新文件。
提前致谢。
问候
巴拉
答案 0 :(得分:2)
您需要的是一种在设备内核中启用对NTFS的支持的方法。这可以通过将ntfs-driver构建为可加载模块(.ko文件)来动态实现。这需要针对您设备上运行的特定内核版本进行。
接下来,您需要一种在每次系统重新启动时自动加载模块的方法。这在Android中也是“可行的”。您可能想要尝试这样做app。即加载位于Android设备上任何位置的一个或多个内核模块。
在此之后每当插入具有ntfs分区的外部设备(usb-drive)时,内核将能够正确识别并安装它。因此,应用程序可以在适当的位置访问它,如“/ mnt / usbhost1”等。