Bes*_*gey 4 file windows-phone-8.1
如何确定Windows Phone 8.1上的本地文件夹(Windows.Storage.ApplicationData.Current.LocalFolder)中是否存在文件?
Rom*_*asz 11
不幸的是,现在没有直接的方法来检查文件是否存在.您可以尝试使用以下两种方法之一:
一个简单的扩展方法可能如下所示:
public static class FileExtensions
{
public static async Task<bool> FileExists(this StorageFolder folder, string fileName)
{
try { StorageFile file = await folder.GetFileAsync(fileName); }
catch { return false; }
return true;
}
public static async Task<bool> FileExist2(this StorageFolder folder, string fileName)
{ return (await folder.GetFilesAsync()).Any(x => x.Name.Equals(fileName)); }
}
Run Code Online (Sandbox Code Playgroud)
然后你可以像这样使用它们:
bool isFile = await ApplicationData.Current.LocalFolder.FileExists("myfile.txt");
Run Code Online (Sandbox Code Playgroud)
如果文件不存在且文件夹中的文件很少,第二种方法可以快一点,因此不会抛出异常.