我需要同步寫入文件,我知道有方法可以做到這一點,但這不是我的情況。在文件上同步寫入不同的異常和訪問被拒絕
從其他page.xml導航後,我來到我的主頁和onnavigated方法,我需要在file.txt中寫一個文本,我從前一頁中獲取。 (這就是我想從應用程序和每一個應用程序將打開它會加載這些數據不會使教程了時間的第一個開放的保存數據)
protected override void OnNavigatedTo(NavigationEventArgs e)
{
Regione = e.Parameter as regione;
string ciccio = "" + Regione2.RegNome.ToString() + "," + Regione2.RegLat.ToString() + "," + Regione2.regLon.ToString();
//File.WriteAllText("Data/data1.txt", ciccio);
File.WriteAllText("C:/Users/giuli/Documents/Source/xxx/XXX/XXX/Data/data1.txt", ciccio);
}
,如果我嘗試用File.WriteAllText("C:/Users/giuli/Documents/Source/xxx/XXX/XXX/Data/data1.txt", ciccio);
我得到一個異常,告訴我我不能使用同步方法: 「不應該在UI線程上執行同步操作,請考慮將此方法包裝在Task.Run中。」
確定,但我需要,我試圖用File.WriteAllText("Data/data1.txt", ciccio);
和我得到一個 System.UnauthorizedAccessException的: 訪問路徑被拒絕
,如果我試圖用異步方法
Windows.Storage.StorageFolder installedLocation = Windows.ApplicationModel.Package.Current.InstalledLocation;
StorageFile File2 = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Data/data1.txt"));
await Windows.Storage.FileIO.WriteTextAsync(File2, ciccio1);
我得到一個 System.UnauthorizedAccessException:'Accesso negato
我通過visual studio創建文件data.txt,它不是操作對VS和我認爲沒有人知道該文件存在,而不是VS.
我怎樣才能最終寫在該文件?
感謝。)
「讀同步和異步方法的工作完美的,所以它不是一個關於路徑 Regione.RegNome = File.ReadAllText("Data/data1.txt");
問題」
所以每次我想寫一個文件我不得不刪除並替換我有的文件?因爲在你的鏈接中說我必須用文件寫入與我所做的相同的事情「等待FileIO。WriteTextAsync(sampleFile);和我採取相同的訪問錯誤(如果我嘗試寫入我的現有文件),但如果我createfileasync並替換已存在的那一個,它允許我寫在它上面。爲什麼這麼難?!我只想在txt中寫一個簡單的幾個單詞... – Uopo