gpt4 book ai didi

android - 存储访问框架 - 设置本地 DocumentFile 的最后修改日期

转载 作者:太空狗 更新时间:2023-10-29 14:50:38 24 4
gpt4 key购买 nike

我想将文件从内部存储复制或移动到 SD 卡。我通过存储访问框架 (SAF) 和 DocumentFile 类...

复制是基于流的,DocumentFile 没有像 File 类那样的功能来设置最后修改日期。

我知道,我将文件移动/复制到 SD 卡,所以我知道我创建了一个本地文件。有了这些信息,是否可以通过某种方式更新 DocumentFile 基础文件的最后修改日期?

似乎您无法在不丢失上次修改日期的情况下将文件从内部存储移动/复制到 SD 卡...

阅读 - 工作

public long lastModified(DocumentFile file, Context context)
{
long lastModified = 0;
final Cursor cursor = context.getContentResolver().query(file.getUri(), null, null, null, null);
try
{
if (cursor.moveToFirst())
lastModified = cursor.getLong(cursor.getColumnIndexOrThrow(DocumentsContract.Document.COLUMN_LAST_MODIFIED));
}
finally
{
cursor.close();
}

return lastModified;
}

写 - 不工作

public boolean setLastModified(DocumentFile file, Context context, long time)
{
ContentValues updateValues = new ContentValues();
updateValues.put(DocumentsContract.Document.COLUMN_LAST_MODIFIED, time);
int updated = context.getContentResolver().update(file.getUri(), updateValues, null, null);
return updated == 1;
}

此操作失败并出现 java.lang.UnsupportedOperationException: Update not supported 异常...

最佳答案

可能您需要 list 中的“android.permission.WRITE_USER_DICTIONARY”权限

关于android - 存储访问框架 - 设置本地 DocumentFile 的最后修改日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35744654/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com