2014-09-22 2 views
1

저는 Xamarin.Forms을 처음 사용하고 CSV/PDF로 내보내기를 사용하여 CSV, PDF와 같은 일부 파일을 장치에 저장하려고합니다.iOS 및 Android 용 Xamarin.Forms의 디렉토리 경로에 액세스하는 방법은 무엇입니까?

그리고 그렇게하려면 장치 디렉토리와 경로에 액세스해야합니다. 하지만 Xamarin.Forms를 사용하면 Xamarin.Forms에서 iOS 용 & Android 용 디렉토리 및 경로에 어떻게 액세스 할 수 있습니까?

미리 감사드립니다.

+0

안드로이드 고유 (그림 등) : var javaFile = Android.OS.Environment.GetExternalStoragePublicDirectory (Android.OS.Environment.DirectoryDcim); // javaFile.AbsolutePath then javaFile.Dispose() – Barton

답변

4

System.Environment.GetFolderPath는 PCL 프로젝트에서 사용할 수 없습니다 (그러나 공유 프로젝트 가능) PCL 경로를 사용하려는 경우 '종속 서비스'기능을 사용할 수 있습니다. (아이폰 OS/안드로이드에서) 콘크리트 클래스에서 주입 (PCL)에

http://developer.xamarin.com/guides/cross-platform/xamarin-forms/dependency-service/

사용 인터페이스. (소리 어렵지는 않지만 쉽습니다.)

+0

이 대답은 작업을 수행하는 코드 스 니펫으로 개선 될 수 있다고 생각합니다. – Karol

+0

https://developer.xamarin.com/guides/ios/application_fundamentals/working_with_the_file_system/ –

2

System.Environment.GetFolderPath과 같은 작업을 수행 할 수 있습니다.

예 : -

string strFolderPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); 

에서 안드로이드이 /데이터/데이터의 라인을 따라 뭔가를 반환합니다/MyProject를/파일

당신은 단지 마지막에 당신의 이름을 추가 할 수 있습니다 파일 만들기 및 쓰기 시작

+1

위의 예제는 @jojobarcream에 대한 언급과 같이 접근법을 사용하고 PCL 프로젝트에서는 사용할 수없는 경우 공유 프로젝트에만 적용됩니다. – Pete

+0

일부 플랫폼에서는 작동하지 않습니다 ..... –

관련 문제