string[] files = Directory.GetFiles(filePath);
if(files.Length>MAX_LENGTH)
{
var oldestfiles = files.Orderby(f=>new FileInfo(f).CreationTime).Take(files.Length-MAX_LENGTH);
foreach(var file in oldestfiles)
{
File.Delete(file);
}
}
* OrderBy
Orderby는 Linq에 선언되어있는 메서드로, 컬렉션(리스트,배열..)을 특정 기준에 따라 오름차순을 정렬한다.
기준은 뒤에 선언되는 람다식에 따른다. 결과는 정렬된 컬렉션을 반환하며, 원본 컬렉션은 변경되지 않는다.
* Take
Take는 Linq 메서드로, 정렬된 컬렉션에서 앞에서부터 지정된 개수만큼 요소를 선택하는데 사용된다.
Take 뒤의 수는 선택하고자 하는 항목의 개수이다.
'SW 개발 공부 > 실수 기록' 카테고리의 다른 글
[VS code] cpp 환경 설정 방법 (0) | 2024.12.17 |
---|---|
신호를 Filtering 후 복조시 Amplitude 줄어드는 문제 (0) | 2024.12.11 |
[Stm32 Project]Debug시 Dynamic Printf가 정상적으로 출력 되지 않을 때 (0) | 2024.11.12 |
[Stm32 Project] header 파일에서 선언한 변수가 .c파일 내에서 찾을 수 없는 경우 (1) | 2024.11.11 |
C#과 C++ 동적 할당 차이 (다른 new 사용법) (0) | 2024.10.28 |