[Android] 메모리(SD카드)공간에 폴더 생성하기


광고 한번만 클릭 부탁드립니다^^


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject [Android] 메모리(SD카드)공간에 폴더 생성하기

최종수정일 : 2011.08.04
- 업데이트 내용
1. 폴더 생성시 오류발생 -> 예외처리 및 소스 수정

최종수정일 : 2011.07.29




안녕하세요~^^
오늘은 간단한 팁^^
Android SD Card에 폴더를 생성 해볼까요? 


by 퓨림노

글을 작성하겠습니다.^^

저는 Data 폴더를 생성할 때

000
001
002
003
004

...
099 

이런씩으로 폴더를 생성합니다. 

물론

000_time  <- 현재시간

여러 데이터를 저장해야되니 말이죠~!!
그래서, 한폴더에 저장해두고~ 정리를 하려니 귀찮더라구요. 
그래서 폴더명을

001_현재시간
으로 저장을 하려고 합니다. 
소스는 다음과 같습니다. 

public String makeDirectory()
	{
		File sd;
		File Filename;
		
		try {			
			while(true) {
				String inTime   = new java.text.SimpleDateFormat("HHmmss").format(new java.util.Date());
				sd = Environment.getExternalStorageDirectory();
				String sNum = "00" + Integer.toString( m_DirNumber );
				String Path = sd.getAbsolutePath()  + "/a_test/" + sNum + "_" + inTime;	 
				Filename = new File(Path);
				
				Log.w("vbflash", sNum+"\n");
				
				if( !Filename.isDirectory() ){
					Filename.mkdirs();
					m_DirNumber++;
					return Path;
				}
				
			}
		}catch(Exception e)
		{			
		}
		return null;
	}

작성일 : 2011.08.04

안녕하세요.. 일단 소스 에러난 거 때문에 다시 수정하였습니다. 
찾아보니깐 -_-a 아니, 이유를 보니 생성된 볼더 체크가 안되었더군요....

File.exists()  함수를 사용해서 폴더가 있으면, continue 로 돌려서 없에버렸습니다. 
프로그램이 자잘한걸로 죽으면 귀찮겠죠? -_-/ 그래도 포스팅으로 글 남깁니다.
파일 처리에 관련되어서 조금더 자세한걸 알고 싶으시면 아래 링크를 추가합니다.
찾아가보시길 바랍니다.

<수정된 소스> 
public String makeDirectory()
	{
		File sd;
		File Filename;
		String sNum;
		
		try {			
			while(true) {				
				sd = Environment.getExternalStorageDirectory();
				
				if( m_DirNumber < 10 )
					sNum = "00" + Integer.toString( m_DirNumber );
				else if( m_DirNumber < 100 )
					sNum = "0" + Integer.toString( m_DirNumber );
				else
					sNum = Integer.toString( m_DirNumber );
				
				
				m_SavePath = sd.getAbsolutePath()  + "/a_test/" + sNum;	 
				Filename = new File(m_SavePath);
				
				if( Filename.exists() ) {
					m_DirNumber++;
					continue;
				}
				else if( !Filename.isDirectory() ){
					Filename.mkdirs();
					m_DirNumber++;
					return m_SavePath;
				}				
			}
		}catch(Exception e)
		{			
		}
		return null;
	}




댓글

Designed by JB FACTORY