我需要在IsolatedStorage中重命名文件。我怎么能这样做?
答案 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);