0

我有以下问题:Android 的服务会使用下面发布的方法覆盖文件吗?我想要得到的是每次应用程序运行时下载文件 - 通过服务,但我不确定文件是否被覆盖。我试图从 Android 文件资源管理器中提取文件并检查创建日期和时间,但它总是有从设备中提取的时间,而不是实际创建文件的时间。在下面发布我的方法:

public static void downloadFile(String sUrl, String fileName, String sharedPref, Context context) {
    try {
        HttpClient client = new CustomHttpClient(
                context.getApplicationContext());
        HttpGet request = new HttpGet(sUrl);
        HttpResponse response = client.execute(request);
        String responseAsString = EntityUtils.toString(response.getEntity());
        OutputStreamWriter outputStreamWriter = new OutputStreamWriter(
                context.openFileOutput(fileName, Context.MODE_PRIVATE));
        outputStreamWriter.write(responseAsString);
        outputStreamWriter.close();
        PreferenceManager
                .getDefaultSharedPreferences(context)
                .edit().putString(sharedPref, "1").commit();
    } catch (Exception e) {
        System.out.println("Exc=" + e);
    }
}
4

3 回答 3

1

默认情况下android不会覆盖你的文件。您需要以编程方式进行。此链接可能对您有所帮助-您如何覆盖而不是附加到 Android 中的文本文件?

于 2013-09-11T12:34:17.660 回答
1

用 false 作为第二个参数标记文件写入,这样它将覆盖您的文件。干杯

于 2013-09-11T12:38:54.807 回答
0

我已经通过替换现有文件的 url 对其进行了测试,它覆盖了它。无论如何,感谢您的回答-在使用 FileWriter 类时会记住这一点。

于 2013-09-11T13:01:42.157 回答