Path.GetTempPath()在Windows应用商店应用程序中不可用

本文关键字:应用程序 应用 GetTempPath Windows Path | 更新日期: 2024-09-20 22:56:21

我正在尝试使用获取临时目录

string tempFolder = System.IO.Path.GetTempPath();

然而,这种方法并不存在。不过,我可以在intelliSense中看到所有其他方法。

为什么没有这种方法。是否有其他方法可以在Windows应用商店应用程序中获取临时文件夹位置?

Path.GetTempPath()在Windows应用商店应用程序中不可用

在ApplicatonData存储中创建临时文件。您必须使用guid或时间戳生成自己的文件名。

Windows.Storage.StorageFolder temporaryFolder = ApplicationData.Current.TemporaryFolder;
StorageFile sampleFile = await temporaryFolder.CreateFileAsync("dataFile.txt", CreationCollisionOption.ReplaceExisting);
await FileIO.WriteTextAsync(sampleFile, formatter.Format(DateTime.Now));

Windows应用商店应用程序是沙盒的,因此您需要对沙盒应用程序文件夹中的文件夹进行读写操作。你将无法像你想要的那样写入传统的临时文件夹C:'Windows'TEMP,是的,你运气不好。您可以访问应用程序文件夹之外的其他一些位置,但在大多数情况下,您的访问权限是有限的。

KnownFolders类是访问以下位置的方式。

  • CameraRoll
  • 文档库
  • 家庭组
  • 媒体服务器设备
  • MusicLibrary
  • 图片库
  • 播放列表
  • 可拆卸设备
  • 保存的图片
  • 视频库

MSDN 上的KnownFolders类