如何在不使用System.IO的情况下更改文件修改日期

问题描述 投票:-1回答:2

我在Unity中编写代码,我想更改文件修改日期。对于那个purpouse我使用File.SetLastWriteTime方法。它工作正常,但在一些Android版本它只是不起作用,并给了我一个erorr IOException: Invalid parameter。我用谷歌搜索了它,似乎是一些未解决的错误,因为有多少人报告相同。

我的问题是:是否有另一个库或不同的方式我可以使用C#更改上次修改日期?

编辑:我需要保留原始修改日期。该文件正在从Amazon S3下载,但修改日期设置为文件在设备上保存的确切时刻。这就是为什么我下载后我尝试做File.SetLastWriteTime(file, original_date)

c# .net unityscript system.io.file
2个回答
0
投票

检查以下代码:

string fileName = @"E:\test.txt";
File.SetLastWriteTime(fileName, DateTime.Now);

Before run the code

After run the code

我为修改日期拍了快照。运行代码之前和之后。您将再次检查给定的路径。


0
投票

在Synology NAS上通过mono使用SetLastWriteTime时,我看到一些任意文件的相同内容 - 某些文件因“无效参数”IOExceptions而失败。

在深入挖掘它之后,我发现这是一个权限/所有权问题 - 运行与sudo相同的工作。

© www.soinside.com 2019 - 2024. All rights reserved.