Tengo un programa que, para funcionar, necesita que el usuario ingrese dos directorios (por ejemplo, el escritorio y el directorio de imágenes). Esto funciona, pero al cerrar y reiniciar el programa, el usuario debe volver a ingresar los directorios, ya que el programa no recuerda los directorios de la última vez que se ejecutó. Obviamente.
Ahora mi plan era crear un archivo en el que el programa escriba los directorios para que, una vez que el usuario inicie el programa, verifique si el archivo existe y, de ser así, lo lea y obtenga los dos directorios que necesita.
Intenté crear un .txt simple, pero como hay dos directorios y uno u otro se pueden escribir primero en el .txt, fue difícil leerlo y obtener el directorio correcto. Para visualizar mi .txt puede verse así:
C://Dir1 C://Dir2
o
C://Dir2 C://Dir1
dependiendo del directorio que el usuario seleccionó primero.

Tl;Dr. Quiero guardar dos directorios para los consiguientes lanzamientos del programa, pero al leer los dos directorios necesito poder saber qué directorio es cuál.
Estoy trabajando con .NET Core 3.1
uno u otro se puede escribir primero en el .txt
Esta es una suposición incorrecta. Tú decides en tu código en qué orden se escriben y siempre escribes los dos, nunca uno solo.
Código de ejemplo para escribir:
string a = null; string b = "c:\\something"; File.WriteAllText("myconfig.txt", a+ "\r\n" + b);Código de ejemplo para leer:
string[] filecontent = File.ReadAllLines("myconfig.txt"); a = filecontent[0]; if (a==string.Empty) a = null; b = filecontent[1]; if (b==string.Empty) b = null; Console.WriteLine(a); Console.WriteLine(b);