.net 在Windows应用商店应用程序中保存文件

.net 在Windows应用商店应用程序中保存文件,.net,windows-runtime,storagefolder,.net,Windows Runtime,Storagefolder,我的程序处理用户指定的所有文件。之后,最好将修改后的文件保留到源文件的目录中StorageFolder.GetFolderFromPathAsync方法返回“拒绝访问” 无法添加清单中的文件类型关联,因为在处理文件后,这些文件将保留其扩展名。以及什么样的文件(具有任何扩展名),用户选择说不可能。 发生错误的代码 internal async static void SetFile(List<byte> byteArray , StorageFile file) {

我的程序处理用户指定的所有文件。之后,最好将修改后的文件保留到源文件的目录中
StorageFolder.GetFolderFromPathAsync
方法返回
“拒绝访问”

无法添加清单中的文件类型关联,因为在处理文件后,这些文件将保留其扩展名。以及什么样的文件(具有任何扩展名),用户选择说不可能。 发生错误的代码

    internal async static void SetFile(List<byte> byteArray , StorageFile file)
    {
        try
        {
            string path = Path.GetDirectoryName(file.Path);
            StorageFolder newFolder = await StorageFolder.GetFolderFromPathAsync(path);
            StorageFile newFile = await newFolder.CreateFileAsync(string.Format(@"crt{0}", Path.GetFileName(file.Name)), CreationCollisionOption.FailIfExists);
            Stream stream = await file.OpenStreamForWriteAsync();
            BinaryWriter writer = new BinaryWriter(stream);
            writer.Write(byteArray);
            writer.Flush();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
内部异步静态void SetFile(按数组列出,存储文件)
{
尝试
{
string path=path.GetDirectoryName(file.path);
StorageFolder newFolder=等待StorageFolder.GetFolderFromPathAsync(路径);
StorageFile newFile=wait newFolder.CreateFileAsync(string.Format(@“crt{0}),Path.GetFileName(file.Name)),CreationCollisionOption.FailIfExists);
Stream=等待文件。OpenStreamForWriteAsync();
BinaryWriter=新的BinaryWriter(流);
作者:写(byteArray);
writer.Flush();
}
捕获(例外情况除外)
{
掷骰子;
}
}

StorageFile文件-用户指定的文件。我正在尝试根据源文件的路径创建一个新文件夹。错误-“访问被拒绝”。要访问此文件夹,我必须注册我使用的文件扩展名。这是不可能的。请告诉我,我们可以这样绕开它吗?或者在我的情况下可以做些什么?

据我所知,如果是Windows应用商店应用程序,除非您继续使用保存选择器,否则无法在PC中保存文件。这就是为什么您可能会遇到“拒绝访问”错误。单击此处查看

另一方面,您可以始终将文件保存在应用程序本身专用的系统位置的

您可以为应用程序设置其他功能,以便它可以访问可移动设备


除了这些,我不知道还有其他人。

据我所知:您有一个文件,对它进行一些操作,并将其保存在同一位置,但名称稍有修改?请详细解释。多久更改一次应用程序的GUID?当你编译一个新版本的时候,或者它取决于另一个版本是什么?由于此更改应用程序文件夹。如果数据丢失,那将是不好的。老实说,到目前为止我还没有尝试过,但有人告诉我,如果您进行更新,存储在LocalFolder中的应用程序数据将不会被删除。非常感谢!我试试看。