Je veux utiliser StreamWriter
pour écrire un fichier dans le dossier temporaire.
Le chemin peut être différent sur chaque PC, alors j’ai essayé d’utiliser %temp%\SaveFile.txt
mais ça n'a pas marché.
Comment puis-je sauvegarder dans le dossier temporaire en utilisant des variables d'environnement?
Et par exemple, puis-je utiliser une variable d'environnement pour stocker des fichiers dans %appdata%
?
string result = Path.GetTempPath();
http://msdn.Microsoft.com/en-us/library/system.io.path.gettemppath (v = vs.110) .aspx
La classe Path est très utile ici.
Vous avez deux méthodes appelées
cela pourrait résoudre votre problème
Ainsi, par exemple, vous pouvez écrire: (si le nom de fichier exact ne vous dérange pas)
using(StreamWriter sw = new StreamWriter(Path.GetTempFileName()))
{
sw.WriteLine("Your error message");
}
Ou si vous devez définir votre nom de fichier
string myTempFile = Path.Combine(Path.GetTempPath(), "SaveFile.txt");
using(StreamWriter sw = new StreamWriter(myTempFile))
{
sw.WriteLine("Your error message");
}
Vous pouvez récupérer dynamiquement un chemin temporaire en utilisant ce qui suit et il est préférable de l’utiliser plutôt que d’utiliser une valeur de chaîne codée en dur pour l’emplacement temporaire. Il renverra le dossier ou le fichier temporaire comme vous le souhaitez.
string filePath = Path.Combine(Path.GetTempPath(),"SaveFile.txt");
ou
Path.GetTempFileName();
System.IO.Path.GetTempPath ()
Le chemin spécifié par la variable d'environnement TMP. Le chemin spécifié par la variable d'environnement TEMP. Le chemin spécifié par la variable d'environnement USERPROFILE. Le répertoire Windows.
Pour% appdata%, jetez un oeil à
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)