F.R.I.D.A.Y.

파일 만든 시간 수정하기 본문

DEV/.Net

파일 만든 시간 수정하기

F.R.I.D.A.Y. 2018. 5. 5. 13:00
반응형

파일을 옮기던지 하면 수정된 시간은 그대로인데, 만든 시간이 달라지는 경우가 있다.

Windows 10의 기본 앱인 Groove 음악은 만든 시간을 기준으로 해서 파일 순서를 만들다보니 귀찮은 적이 한두번이 아니라서 프로그램으로 일괄 변경시켰다.


현재 옵션은


- 하위폴더 포함

- *.mp3로 끝나는 파일만

- 만든 시간을 해당 파일의 마지막으로 수정된 시간으로 덮어씌움


이렇게이고, 폴더는 Target_Location에 폴더 경로를 넣어주면 된다.


    Const Target_Location As String = ""

    Sub Main()
	Dim file As New List(Of String)
	file.Clear()

        For Each str As String In My.Computer.FileSystem.GetFiles(Target_Location, FileIO.SearchOption.SearchAllSubDirectories, "*.mp3")
            '파일 리스트 생성
            file.Add(str)
        Next

        Dim createTime As Date '파일의      만든 시간 변수
	Dim changeTime As Date '파일의 최종 수정 시간 변수
	For i = 0 To file.Count - 1
		createTime = My.Computer.FileSystem.GetFileInfo(file(i)).CreationTime  '파일      만든 시간 로드
		changeTime = My.Computer.FileSystem.GetFileInfo(file(i)).LastWriteTime '파일 최종 수정 시간 로드

		System.IO.File.SetCreationTime(file(i), changeTime)      '파일의 만든 시간을 최종 수정 시간으로 덮어 씌움
		Console.WriteLine(file(i) & $" : Success; {changeTime}") '정규식. $ 입력후 ""안에 변수명을 쓰고싶으면 {}로 묶어주면 됨.
	Next

    End Sub


728x90
반응형
Comments