14

通过我的 Android 程序,我写了一个这样的文件:

String file = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Files/hello.txt";
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(str+"\n");     \\yeah string has a value there
writer.close();

现在,当我进入 Android 的“Astro”文件浏览器时,我可以看到 hello.txt 文件,/mnt/sdcard/Files但是当我在 Windows 中安装 sdcard 时,我只能看到该文件夹​​中的 4 个其他文件,但看不到 hello.txt。

在 Windows 本身中,我什至尝试取消选中隐藏隐藏文件选项,以确保文件未被隐藏但它只是不可见。

我什至尝试将文件写入 sdcard 的根目录,但同样的问题。现在我很惊讶我怎么可能在 Android 中看到该文件,但在 Windows 中却看不到。在 Android 中,我什至检查了文件内容,一切看起来都很好。

可能是什么问题呢?我写文件的方式错了吗?

PS:是的,android.permission.WRITE_EXTERNAL_STORAGE添加了清单权限。

4

4 回答 4

5

好的,我知道为什么会这样了。实际上,即使我们按下“返回”按钮,程序也会继续运行,除非我去,否则我Settings > Applications > Manage Applications > "Force Stop" <application>无法访问该程序写入的文件,即使它在 sd 卡上,即使文件写入器已关闭。

这只是基于我的观察,我希望有人用事实和解决方案发布更好的答案。

编辑:我会相应地更新我的问题。

编辑:按照 meta 的建议,我发布了一个新问题

除非我“强制关闭”应用程序,否则在 Windows 中看不到由 sd 卡上的 android 应用程序写入的文件

于 2011-09-15T06:48:11.330 回答
4

如果更糟糕的是断开连接,请重新启动并重新连接您的 Android 设备。这些文件应该会显示出来。

于 2012-08-22T04:31:57.010 回答
0

我找到了一种解决方法。

我编写了一个例程来从手机加速度计中捕获数据。我注意到如果该文件具有 .dat 或 .txt 扩展名,我看不到它,也无法将其复制到我的 PC 上。

通过不为 Android 端的文件分配文件扩展名,我发现它可以从 PC 中看到。将其复制到 PC 并添加 .txt 扩展名后,即可在 PC 上查看。

于 2018-01-27T01:06:16.647 回答
-4

显示隐藏的文件和文件夹

  • 在控制面板中打开文件夹选项
  • 单击开始,然后单击控制面板。
  • 单击外观和主题,然后单击文件夹选项。
  • 在查看选项卡上的隐藏文件和文件夹下,单击显示隐藏文件和文件夹。
于 2011-09-12T19:18:26.550 回答