확장명이 .csv 인 고유 한 임시 파일을 생성해야합니다.
내가 지금하는 일은
string filename = System.IO.Path.GetTempFileName().Replace(".tmp", ".csv");
그러나 이것이 내 .csv 파일이 고유하다는 것을 보장하지는 않습니다.
충돌 가능성이 매우 낮다는 것을 알고 있습니다 (특히 .tmp 파일을 삭제하지 않는다고 생각하면).이 코드는 나에게 좋지 않습니다.
물론 문제가되지 않아야하는 고유 한 파일을 찾을 때까지 임의의 파일 이름을 수동으로 생성 할 수 있지만 다른 사람들이이 문제를 처리 할 수있는 좋은 방법을 찾았는지 궁금합니다.
GetTempFileName()
생성 새 파일 당신이 그것을 호출 할 때마다. -문자열을 즉시 다른 것으로 바꾸면 임시 디렉토리에 새로운 0 바이트 파일을 만들었습니다 (다른 사람들이 지적했듯이 65535 파일을 치면 결국 실패하게됩니다 ...)- -이를 피하려면 해당 폴더에 생성 한 파일 ( GetTempFileName()
이상적으로는 finally 블록에 의해 반환 된 파일 포함)을 삭제해야합니다 .