버그 해결을 위한 모든 질문을 던져
+2 votes
304 views

c# File.Exist() 는 느리다는데 전 잘 못느끼고 있었다가 

챗방에서 알려줘서 찾아보니 이런글이 보이고

https://stackoverflow.com/questions/2225415/why-is-file-exists-much-slower-when-the-file-does-not-exist

 

그리고 전 c++에선 모든플랫폼 돌리기위해 표준함수 써야하는 상황에선 access 썼는데 stat 가 더빠르군요

https://stackoverflow.com/questions/12774207/fastest-way-to-check-if-a-file-exist-using-standard-c-c11-c

Method exists_test0 (ifstream): **0.485s**
Method exists_test1 (FILE fopen): **0.302s**
Method exists_test2 (posix access()): **0.202s**
Method exists_test3 (posix stat()): **0.134s**
asked (329 point)
수정됨 , 304 views
c# File.Exist() 이상하게 안드엿나 ios 에서 구현이 잘못되있는지 exist true 상태에서 바로 해당 파일을 write를 못하는거 같더라구영. 내부에서 dispose를 호출 안하는거 같은 느낌이 마구 들긴 하는데.
File.Exist()는 파일의 존재유무만 확인하는 것이고 write할 수 있는지는 stream으로 열어보고 CanWrite 값이 true인지 확인해봐야 합니다. 댓글의 의도와 상황은 특정 OS에서는 File.Exist()만 호출해도 CanWrite가 잠시 false로 되나 봅니다.

질문에 대한 답변을 하려면 로그인 또는 가입해야합니다.

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

170 질문
273 answers
292 댓글
285 users