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

sdcard에 파일 생성

0 추천

매니페스트에 권한 주고 6.0이상부터 적용되는 퍼미션 체크 방식도 사용하였습니다

그렇게 sdCard의 경로까지 구했는데

파일을 생성하려고 하면 IOException이 뜨네요ㅜㅜ

간단하게 txt파일을 만들어 저장하려고 하는데 방법이 없을까요?한참 찾아봐도 externalStorage에 대한 내용밖에 안나오네요..

 

getExternalStoraeDirectories(context)[0] 이 sdCard 경로입니다..

로그에도 /storage/****-****이런식으로 경로가 나옵니다.

createNewFile()에서 IOException: Permission denied가 뜨고요..

public void setDownloadPath(Context context) {
        File file ;
        File root = Environment.getExternalStorageDirectory();
        FileWriter fileWriter = null;
        try{
            file = new File(getExternalStorageDirectories(context)[0],File.separator+"/Android/data/test.txt");
            Log.d(TAG,"name :: "+getExternalStorageDirectories(context)[0]+File.separator+"test.txt");
            if(!file.exists()){
                file.createNewFile();
            }
            fileWriter = new FileWriter(file);
            String msg = "test";
            fileWriter.append(msg);
            fileWriter.flush();
            fileWriter.close();
        }catch (IOException e){
            e.printStackTrace();
        }
    }
빈길 (1,270 포인트) 님이 2018년 9월 4일 질문

1개의 답변

0 추천
 
채택된 답변

메니페스트에 externalStorage 퍼미션 추가해주셨나요?

열코 (890 포인트) 님이 2018년 9월 4일 답변
빈길님이 2018년 9월 4일 채택됨
네 추가되어있는 상태입니다
권한 승인 팝업 뜨는거도 하셨나융?
네 그거 다 적용되어있는 겁니다 질문 첫줄에 다 써놓았어요ㅜㅜ
sd카드는 읽기 전용이라 특정 디렉토리에만 쓸수있습니다.
Storage Access Framework 검색해서 사용해보세요
덕분에 방법을 찾았습니다 감사합니다
...