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

File 함수로 만든 폴더의 중복처리에 관하여 질문합니다. [closed]

0 추천
개발중인 어플에 폴더가 필요한 상황이 생겨 구현하던도중 중복처리와 관련된 문제에 부딪혀 고민중입니다. (폴더를 생성하는 부분은 문제없이 구현했습니다.)

폴더 만들기 기능은 액션바의 메뉴에 사용했습니다.

먼저 메뉴에서 '새폴더'라는 아이템을 누르면 AlertDialog가 생성되고 Dialog안에는 EditText와 확인/취소 버튼이 있습니다. getAbsolutePath()와 EditText의 내용을 얻어 mkdirs()을 해주는 방식으로, 이름을 적고 확인을 누르면 최종적으로 현재 지점의 폴더의 상위폴더(EditText로 만든 폴더)를 만들어주는 기능입니다.

여기서 생긴 문제는 이러한 방식으로 구현하니 if()를 통해 중복된 경로의 상위폴더를 못만들게 하는 기능을 구현하지 못했습니다.

 

Flie.exists()로 확인하자니 폴더 이름이 어떻든간에 확인되서 문제고...

API에선 제일 가능성 있어보이는 equlas()와 FileFilter(), getName()밖에 찾지 못했습니다. equlas는 자세한 사용법은 모르겠고... FileFilter는 폴더내의 디렉토리만을 필터링해주고, getName은 현재 지점에서의 폴더 이름을 리턴해주는듯 합니다.

또한 이것을 폴더를 만드는 과정에서 확인해줘야 하는건지, 폴더를 리스트뷰에 추가할때 확인을 시켜주는 것인지 제대로된 확신을 못내겠습니다...

(혹시 제가 찾아낸 메소드들 중에서 맞는 것이 있다면 알려주시면 정말로 감사드리겠습니다...)
질문을 종료한 이유: 현재 문제를 해결했습니다.
CEL (1,140 포인트) 님이 2015년 7월 11일 질문
CEL님이 2015년 7월 13일 closed
죄송하지만 질문이 간단 명료하게 정리될 필요가 있어 보입니다.
정독했으나 작성자님의 의도가 잘 이해 되지 않습니다.
1. 폴더명으로 특정 경로에 폴더를 만들려고 한다.
2. 상위 폴더를 못 만들게 하고 싶다? 무슨 뜻인지...
자세하게 적는 것보다는 원하는 게 무엇인지 이해가 잘 되게 적어주세요.
아 죄송합니다;; 상위폴더와 하위폴더의 개념을 착각하고 있었고 또 계속 고민을하고 수정한결과 현재는문제를 해결했습니다. 상당히 복잡하게 생각하고 있던상황이라 지금 제가 보아도 본문의 내용정리가 잘 안되있네요... 막상 수정하니 허무한 결과였습니다. 시간이 지났지만... 지적해주신 내용은 항상 참고하겠습니다.
1. 스마트폰 내부저장소의 절대경로를 얻고 그것을 토대로 단순히 말하는 '새 폴더' 기능을 구현중이였습니다. 지금은 문제를 해결했지만...
2. 상위폴더가 아니라 하위폴더 였다는걸 이제와서야 깨달았습니다.(여태껏 착각하고 있었습니다...)

제가 본문을 너무 자세하게 적는탓에 다시보는 저도 참... 답변자분들에겐 죄송하게 생각하고있습니다... 지적해주셔서 감사합니다.

1개의 답변

0 추천
계속 수정해준 결과 문제를 해결했습니다.

또 지금 본문을보아하니 제가 정리를 못한점이 눈에띄네요... 상위폴더와 하위폴더의 개념 자체도 여태껏 잘못이해 하고 있었고 두서가 없는 점이 눈에 띕니다..

질문은 마감했습니다.
CEL (1,140 포인트) 님이 2015년 7월 13일 답변
...