2011-11-25 1 views
0
내가 BinaryReader를을 사용하여 이진 파일을 읽을 수

에 바이너리 파일 읽기,하지만 예외가 점점 계속 :윈도우 폰

using (var stream = File.Open("file.bin", FileMode.Open, FileAccess.Read)) 
     { 
      using (BinaryReader r = new BinaryReader(stream)) //EXCEPTION 
      { 

      } 
     } 

은 "file.bin"빌드 작업의 내용으로 설정되었습니다, 실패

System.MethodAccessException가 처리되지 않은 방법에 액세스 할 수

시도했다 : 그러나 나는이 예외가 계속 System.IO.File.Open (선택 System.String, System.IO.FileMode, System.IO.FileAccess)

답변

1

Windows Phone 7에서 File.Open을 사용하지 마십시오. isolated storage을 사용해야합니다.

자세한 내용은 System.IO.IsolatedStorage 네임 스페이스를 참조하십시오. 예를 들어

:

using (var store = IsolatedStorageFile.GetUserStoreForApplication()) 
{ 
    using (var stream = store.OpenFile("file.bin", FileMode.Open)) 
    { 
     using (var reader = new BinaryReader(stream)) 
     { 

     } 
    } 
} 

편집 : 코멘트에 언급 한 바와 같이, XAP에 내장 된 콘텐츠를, 당신이 Application.GetResourceStream를 사용해야합니다.

+0

하지만 내 xap 파일의 내용에서 파일을 읽어야합니다. IsolatedStroage를 사용하여이 파일에 액세스 할 수 있습니까? – Ateik

+0

@ user836252 : 아, 말씀 하셨을 것입니다. 아니요, 그것들은 격리 된 보관소에 없을 것입니다. ['Application.GetResourceStream'] (http://msdn.microsoft.com/en-us/library/ms596994(v= VS.95) .aspx)이 필요하다고 생각합니다. [이 비슷한 질문] (http://stackoverflow.com/questions/5045456/how-to-read-text-from-a-text-file-in-the-xap)을 참조하십시오. –

+0

나는 그것이 빌드 동작의 내용으로 설정되었지만 감사합니다. GetResourceStrea를 사용하여 작동합니다. – Ateik