마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 단말기 파일 불러오기 질문입니다

0 추천
String dir = Environment.getExternalStorageDirectory().getAbsolutePath();
 
File file = new File(dir,fileName);
 
이런 구문으로 파일객체를 생성하는데 생성이 되지안습니다
 
storage/emulated/0 이  dir 로 반환되는데 가상머신으론 잘 작동했는데  실제 단말기에선 여기서 막혀서 진행이되지않습니다
 
아시는분들의 조언을 구합니다..
숭늉 (540 포인트) 님이 2014년 7월 10일 질문

1개의 답변

0 추천
 
채택된 답변
디렉토리가 존재하는지 확인한 뒤, 없다면 디렉토리를 생성 후에 파일을 생성해보시길 바랍니다.
인연 (31,880 포인트) 님이 2014년 7월 10일 답변
숭늉님이 2014년 7월 10일 채택됨
그렇게했지만 file.exists() 에서 false 가 뜨네요.. 생성이 안된다는거네요
file.exists()로 false가 뜬다는 것은 해당 경로에 파일이 없다는 것을 의미합니다. 단말기마다 외장 경로를 정하는 것이 달라 안 될수도 있으니 다른 경로를 사용하여 확인해보시길 바랍니다.
인연님 감사합니다 여러번 시도끝에 getExternalStorageDirectory().getPath() 함수가 돌려주는 경로는
외부 sdcard 경로가아닌 내장메모리 경로란걸 확인했네요
핸드폰을 연결하면 탐색기에서 접근가능한 경로가 sdcard 와 phone 이었는데 그 phone 이라는 경로를 돌려주는군요 sdcard 의 경로를 얻을려면 어떤방법이 있을까요?
기기마다 차이가 존재하겠지만, 전 Environment.getExternalStorageDirectory() + 파일이름 하면 외부장치에 접근이 가능하더군요. getPath() 메소드를 사용하지 않고, 그냥 문자열로 이어버렸습니다; 아마 내부적으로는 Environment.getExternalStorageDirectory().toString()이 되겠지요.
한번해보겠습니다 감사합니다
...