gpt4 book ai didi

vb.net - WinRT - 读取文件的访问被拒绝

转载 作者:行者123 更新时间:2023-12-03 03:36:45 24 4
gpt4 key购买 nike

我正在尝试编写一些代码来写入文本文件。我的代码正在运行...但是今天(没有更改)它开始生成“访问被拒绝”错误。我正在写入 LocalFolder (Windows.Storage.ApplicationData.Current.LocalFolder)。

我是否必须在 list 中声明我要将文件保存在 LocalStorage 中?我知道我必须为我的文档执行此操作,还是我遗漏了某些内容?这是我的示例方法,说明了我如何尝试写入文件:

        ''' <summary>
''' Writes all of the text to the specified file in one of the specified safe storage folders.
''' </summary>
''' <param name="text">The text to write.</param>
''' <param name="append">Whether or not to append the data or overwrite what is in the file.</param>
''' <param name="fileName">The name of the file to write the data to.</param>
''' <param name="safeFolder">The safe storage folder that should be written to. These folders are isolated for the application to use
''' and do not require additional manifest permissions.</param>
''' <returns></returns>
''' <remarks></remarks>
Public Shared Async Function WriteAllText(text As String, append As Boolean, fileName As String, safeFolder As SafeStorageFolder) As Task
Dim folder As Windows.Storage.StorageFolder

Select Case safeFolder
Case SafeStorageFolder.Local
folder = Windows.Storage.ApplicationData.Current.LocalFolder
Case SafeStorageFolder.Roaming
folder = Windows.Storage.ApplicationData.Current.RoamingFolder
Case SafeStorageFolder.Temp
folder = Windows.Storage.ApplicationData.Current.TemporaryFolder
Case Else
folder = Windows.Storage.ApplicationData.Current.LocalFolder
End Select

Dim sf As StorageFile

If append = True Then
sf = Await folder.CreateFileAsync(fileName, Windows.Storage.CreationCollisionOption.OpenIfExists)
Else
sf = Await folder.CreateFileAsync(fileName, Windows.Storage.CreationCollisionOption.ReplaceExisting)
End If

' WriteTextAsync will always overwrite the file even if the existing file has been opened. We'll use
' AppendTextAsync here, the above CreateFileAsync will handle whether the file has been truncated or not.
Await FileIO.AppendTextAsync(sf, text)

End Function

最佳答案

我在测试项目中使用了相同的代码逻辑,它对我来说工作得很好。我没有遍历所有追加/不追加路径,但我能够写入每个文件夹。

您是否从您在选择中设置的文件夹对象中提取了文件路径,并仔细检查是否可以在文件资源管理器中打开它?

关于vb.net - WinRT - 读取文件的访问被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12202092/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com