在IsolatedStorage中重命名文件

时间:2009-04-09 22:15:50

标签: c# isolatedstorage

我需要在IsolatedStorage中重命名文件。我怎么能这样做?

3 个答案:

答案 0 :(得分:8)

在本地C#中似乎没有这样做(可能存在于本机Win32中,但我不知道)。

您可以做的是打开现有文件并将其复制到新文件并删除旧文件。与移动相比,这将是缓慢的,但它可能是唯一的方式。

var oldName = "file.old"; var newName = "file.new";

using (var store = IsolatedStorageFile.GetUserStoreForApplication())
using (var readStream = new IsolatedStorageFileStream(oldName, FileMode.Open, store))
using (var writeStream = new IsolatedStorageFileStream(newName, FileMode.Create, store))
using (var reader = new StreamReader(readStream))
using (var writer = new StreamWriter(writeStream))
{
  writer.Write(reader.ReadToEnd());
}

答案 1 :(得分:7)

除了复制到新文件,然后删除旧文件方法,从Silverlight 4和.NET Framework v4开始,IsolatedStorageFile公开MoveFile和MoveDirectory方法。

答案 2 :(得分:1)

完美执行这段代码

string oldName="oldName";
string newName="newName";
var file = await ApplicationData.Current.LocalFolder.GetFileAsync(oldName);
await file.RenameAsync(newName);