我試圖將JSON文件保存在應用程序文件夾中,我能夠從此文件讀取數據,但我無法在此文件中寫入數據。錯誤:試圖將文件保存到UWP應用程序文件夾
data.json在文件屬性中被標記爲「內容」。
class Json
{
private string data;
private const string value1key = "value1";
private const string value2key = "value2";
private const string value3key = "value3";
StorageFile file;
StorageFolder folder;
private void File()
{
folder = Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync("Data").AsTask().ConfigureAwait(false).GetAwaiter().GetResult();
//file = StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///data.json")).AsTask().ConfigureAwait(false).GetAwaiter().GetResult();
file = folder.GetFileAsync("data.json").AsTask().ConfigureAwait(false).GetAwaiter().GetResult();
}
public Json()
{
File();
}
public string Read()
{
return (FileIO.ReadTextAsync(file).AsTask().ConfigureAwait(false).GetAwaiter().GetResult());
}
public async void Save()
{
JsonObject jsonObject = new JsonObject();
jsonObject["value1"] = JsonValue.CreateNumberValue(Data._value1);
jsonObject["value2"] = JsonValue.CreateNumberValue(Data._value2);
jsonObject["value3"] = JsonValue.CreateNumberValue(Data._value3);
string newData = jsonObject.Stringify();
await FileIO.WriteTextAsync(file, newData);
//FileIO.WriteTextAsync(file, newData).AsTask().ConfigureAwait(true).GetAwaiter();
}
}
我得到這個錯誤: System.UnauthorizedAccessException的:「拒絕訪問。 (來自HRESULT的異常:0x80070005(E_ACCESSDENIED))'
如果問題沒有解決方法,是否有另一種方法來保存應用程序數據?
你檢查了這個:https://stackoverflow.com/a/11523266/2656632? –