В настоящее время я загружаю xml-файлы на основе пользовательского ввода из текстового поля в приложении UWP, которое я делаю. Само приложение предназначено для редактирования существующих файлов, а также для их отображения (вроде текстового редактора, но только для изменения атрибутов, а не формы файла).
Все это отлично работает для любого файла на моем диске H (который, как мне кажется, полностью локальный), но не на моем диске C или любом другом сетевом диске. Ниже находится раздел, где я начинаю загружать файл пользователя в самом старте приложения.
XmlTextReader reader = new XmlTextReader(fileAddress.Text);
XmlDocument doc = new XmlDocument();
try{
doc.Load(fileAddress.Text);
}
catch (System.UnauthorizedAccessException)
{
Debug.WriteLine("couldn't access file here");
}
Ниже приведен код ошибки, который я получаю без улова с моим диском C, и это то, что я хочу знать, как я могу избежать (т.е. фактически получить доступ к файлу)
Access to the path 'C:\Users\x\Documents\XML_Files\IEC_EI_AR_XMLDesign.xml' is denied.
Ниже приведен путь, который работает (на моем диске D) для того же файла:
H:\XML_Files\IEC_EI_AR_XMLDesign.xml
Я просмотрел другие сообщения, и они, похоже, не помогают или не решают эту конкретную проблему (некоторые диски работают, а некоторые не работают). Я попробовал эти решения здесь, которые кажутся довольно разумными, но они не работали или устарели.
Мне нужно чтобы сохранить файл XML с помощью linq с кодом xml в C#
Я знаю, что мне может понадобиться изменить разрешения для этих папок или предоставить Visual Studio/моей программе повышенные разрешения, чтобы позволить пользователю получить доступ к своему собственному диску, хотя я не совсем уверен, где и как я могу это сделать. Кроме того, любое решение, которое я все равно хотел бы поддерживать привилегиями чтения/записи.
Любые советы или предложения/рекомендации приветствуются!
fileAddress.Text
, и в обоих случаях попытка перейти к ним приводит к недопустимому пути. Вот почему я не понимаю, почему первый путь к диску D работает, а путь к диску C - нет, даже если путь действителен. Спасибо за вашу помощь. - person skyrimpacman   schedule 27.07.2020XmlTextReader
, так иXmlDocument
для одного и того же файла? - person Alexander Petrov   schedule 27.07.2020