2013년 1월 24일 목요일

c# 파일, 디렉토리복사이동삭제 관련


파일관련된 작업을 했습니다.

특정 폴더를 복사, 이동 하려합니다.
특정폴더 밑에는 폴더들과 파일들이 존재하는데
이 모든것들을 대상 경로에 복사, 이동해야합니다.

msdn 파일 및 폴더 복사 , 삭제 및 이동
http://msdn.microsoft.com/ko-kr/library/cc148994.aspx

이동 이나 삭제 같은경우 메소드가 존재 합니다.
Directory.Move()
Directory.Delete()
하지만 파일 복사시 위의 경우처럼 특정폴더 하위에
폴더나 파일들이 존재한다면

폴더들을 CreateDirectory로 일일이 만들어줘야하고
파일들도 각각 Copy해야하는것 같습니다. msdn 참고 한 결과 이렇게 해줘야 되더군요-_-
귀찮게말입니다.

파일삭제나 이동 복사, 삭제 같은경우 권한 등등을 고려해야할것 같습니다.
<권한, 존재유무,등등>
파일보안 관련한 블로그 참고 http://nsinc.tistory.com/43

(윈폼에서는 app.manifest 파일에서 아래의내용을 추가했었습죠
""


디렉토리내의 하위디렉토리까지 검색해야하는경우 재귀나 for문, 스택을 이용합니다.
재귀는 적절한 방식이기는 하지만 디렉토리의 규모가 크고 복잡하게 중첩되어 있으면
스택오버플로우 예외를 발생시킬 위험이 있다고 하는군요

msdn에서 디렉토리 트리반복으로 가이드가 있군요
http://msdn.microsoft.com/ko-kr/library/bb513869.aspx


c#에서 운영체제를 확인하는
OperatingSystem os = Environment.OSVersion;
string osname = os.versionString;

결과값: os.VersionString = "Microsoft Windows NT 6.1.7601 Service Pack 1"
win2008 = "6.0.6002";
win2003 = "5.2.3790";
win7 = "6.1.7601";

댓글 없음:

댓글 쓰기