【发布时间】:2011-07-16 13:48:24
【问题描述】:
我有一个 android 应用程序,可以将文件从谷歌文档下载到设备上的 SD 卡。 (原因:有我无法在应用程序中打开的 PDF-s)。
它成功写入 SD 卡,直到我达到总共 10000 个文件的第 8000 个文件。
写入 SD 的代码:
InputStream is = response.getContent();
FileOutputStream fos = new FileOutputStream(new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/"+preferences.getString("username", "manas11")+"/" + tmp_entry.resourceID.replace(":","~_~")+"~_~"+tmp_entry.title));
byte[] buf = new byte[1024];
int len;
while((len=is.read(buf))>0)
fos.write(buf,0,len);
第 2 行抛出的异常:
java.io.FileNotFoundException: /mnt/sdcard/matulic.realestate.hr/file~_~0B3n2EnTf5ATnYTJkNTNmM2QtZDJjYy00YjNhLWJlZjQtYTE4MTU5MjI2N2E5~_~Kuæa Marina Sevid 399.00 m2 - LJETNA AKCIJA IZVRSN - k359.txt (No space left on device)
SD 卡是 microSD™ 存储卡(兼容 SD 2.0),8gb,FAT32 格式。我正在使用 Desire HD。
如您所见,文件名很长。
我将文件保存到 /mnt/sdcard/ 中的目录,异常后的状态是(由 Astro 提供):
大小:519,668,573 字节
文件数:8037
设备可用大小:4.91 G
写入我不知道的 SD 有任何限制吗?
谢谢
【问题讨论】: