2013-08-04 2 views
1

"내 문서"폴더의 XML 파일 읽기에 문제가 있습니다. "my documents"내의 Data 폴더에 xml 파일을 만들었습니다. 응용 프로그램의 기능을 이미 변경했지만 XmlReader 판독기 줄에서 'C : \ Users ... \ Documents \ DomusGest \ DomusGestFile.xml'경로에 대한 액세스가 거부되었습니다. "라는 예외가 있습니다.XML 파일 fom "내 문서"(메트로 응용 프로그램 Windows 8)

   StorageFolder storageFolder = null; 
       StorageFile storageFile = null; 
       storageFolder = await KnownFolders.DocumentsLibrary.GetFolderAsync("Data"); 
       storageFile = await storageFolder.GetFileAsync("DataXML.xml"); 
       string storageFilePath = storageFile.Path; 


       XmlReader reader = XmlReader.Create(storageFilePath); 
       while (reader.Read()) 
       { 
        if ((reader.NodeType == XmlNodeType.Element) && (reader.Name == "Apparmtment")) 
        { 
         if (reader.HasAttributes) 
          { 
           WriteXML.Text = reader.GetAttribute("name");//write on Win8 App 
          } 
        } 
       } 

이 코드를 사용하면 파일이 메트로 앱 솔루션의 폴더에있는 경우 파일을 읽을 수 있습니다.

내가 뭘 잘못하고 있니?

감사합니다.

답변

0

속성, 기능 및 문서 라이브러리 액세스 기능을 활성화해야합니다. 그런 다음 응용 프로그램 매니페스트를 업데이트하여 자신의 경우 ".xml"을 읽을 수있는 문서 유형을 선언해야합니다. 이는 선언 탭에서 수행 할 수 있습니다.

그러나 이것은 사용자 또는 개발자 모두에게 최선의 선택이 아니라는 점을 유의하십시오. 사용자에게 이것은 안전하지 않으며 기능을 수락해야합니다. 일부 사용자를 끌어낼 수도 있습니다. 반면에 사용자는이 XML을 더 쉽게 수정할 수 있습니다 (또는 다른 앱). 그러면 XML을 처리해야합니다.

+0

안녕하세요 Danielrozo. 나는 그 사실을 알고있다. 그러나 이것은 내가 염두에 두었던 다른 선택입니다. 첫 번째 옵션은 앱 솔루션에서 xml 파일을 사용하는 것입니다. 파일을 읽을 수는 있지만 같은 파일에 아무것도 편집하거나 저장할 수 없습니다. 위의 경우 폴더와 파일을 저장하고 만들 수 있지만 읽을 수는 없습니다. 한 쪽에서는 한 가지만하고 다른 한 쪽에서는 한 가지만 할 수 있기 때문에 이상합니다. – Canha

+0

파일을 저장할 위치는 사용자가 결정해야합니다. 질문에 관해서는 내 대답을 시도하면 사용자 문서에서 파일을 읽을 수 있습니다. – danielrozo

관련 문제