¿Cómo detectar la causa System.IO.IOException por un archivo existente?

Quiero crear y abrir un archivo, pero solo si no existe. No quiero usar un File.Exists porque un hilo por interruptor después de crear un archivo con el mismo nombre.

¿Cómo compruebo si la excepción System.IO.IOException fue causada por el archivo existente? Prefiero no analizar el mensaje de error (aunque puede ser tan simple como .indexOf ("existe"))

Cómo debería hacer esto?

Respuestas a la pregunta(5)

Su respuesta a la pregunta