【发布时间】:2012-06-26 18:25:44
【问题描述】:
我遇到的问题可能与硬件有关。无论如何我都难住了。
我已经编写了一些代码(我从Writing Text File to SD Card fails 获取并修改了这些代码)我已经将代码放在下面。它在我的索尼爱立信 X8 上运行良好。但是,在索尼爱立信 Arc 上,我在手机上查找时找不到文件!我逐行浏览代码,没有失败。就好像它在电话里,而我只是瞎了眼。我什至可以在调试器中看到 gpxfile 的值是:
/mnt/sdcard/MyCompany/MyLog 但是当我使用 Windows 资源管理器查找文件时,我肯定看不到 MyCompany 目录。手机上是否有一些设置(静默)阻止写入 SD 卡?
代码如下:
public static boolean generateNoteOnSD(String sFileName, String sBody) {
try {
String auxSDCardStatus = Environment.getExternalStorageState() ;
if (!auxSDCardStatus.equals(Environment.MEDIA_MOUNTED)) {
Log.i(TAG, "generateNoteOnSD auxSDCardSTatus: " + auxSDCardStatus);
}
if (auxSDCardStatus.equals(Environment.MEDIA_MOUNTED)) {
File root = new File(Environment.getExternalStorageDirectory(), "Dexcom");
if (!root.exists()) {
root.mkdirs();
}
File gpxfile = new File(root, sFileName);
FileWriter writer = new FileWriter(gpxfile, true);
String currentTimeString = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(new Date());
writer.append(currentTimeString + ", " + sBody +System.getProperty("line.separator") );
//writer.newLine();
writer.flush();
writer.close();
Log.d(TAG,"generateNoteOnSD: Saved to file: " + sBody);
return true;
} else {
return false;
}
} catch(IOException e) {
e.printStackTrace();
return false;
//importError = e.getMessage();
//iError();
}
}
【问题讨论】:
-
您是否尝试过使用 adb 来查看是否可以从 shell 或使用 adb pull 来查看?