Il existe un fichier texte que j'ai créé dans mon dossier racine de projet. Maintenant, j'essaie d'utiliser Le problème que j'ai ici est que le chemin de fichier est incorrect et alors comment dois-je faire référence correctement à ce fichier texte? Puis-je utiliser le chemin relatif au lieu du chemin absolu? Merci. P> EDIT:
Si je change au-dessus du code à cela, cela fonctionnerait-il? P> processus.start () code> méthode pour lancer en externe ce fichier texte.
processus.start () code> ne trouve pas ce fichier texte. Mon code est comme suit: p>
string path = Assembly.GetExecutingAssembly().Location;
Process.Start(path + "/ReadMe.txt");
5 Réponses :
Vous devez connaître le répertoire actuel si vous souhaitez utiliser un chemin relatif. Vous pouvez l'ajouter à votre chemin avec chemin avec chemin p>
Process.Start Code> peut ouvrir à peu près n'importe quoi, il essaie d'utiliser l'application associée au fichier.
Si processstartinfo.useshelexecute code> est vrai, qui est la valeur par défaut.
Windows doit savoir où trouver le fichier, vous avez donc besoin d'une manière d'une manière ou d'une autre, spécifiez-la:
Utilisation de la voie absolue: P>
var directory = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location); var file = Path.Combine(directory, "1.txt"); Process.Start(file);
Si je fais cela, cela fonctionnerait-il? chemin de chaîne = assemblage.getexecutingassemblage (). Emplacement; Processus.start (chemin + "/readme.txt");
Si le fichier est dans le même répertoire que l'exécutable que oui. Cependant, vous feriez mieux d'utiliser path.combine au lieu d'une concaténation de chaîne. Également emplacement code> aura un nom de fichier à l'intérieur. Vous devez obtenir un répertoire uniquement.
Essayez d'utiliser Application.StartuTutuTPath chemin comme chemin par défaut peut pointer sur le répertoire actuel. P>
Ce scénario a été expliqué sur des liens suivants .. p>
Environnement.CurrentDirectory en C # .NET P>
http://start-coding.blogspot.com/2008/12 /applicationStartuTutuPath.html p>
La façon dont vous faites cela va bien. Cela trouvera le fichier texte qui figure dans le même répertoire que votre EXE et il l'ouvrira avec l'application par défaut (probablement NOTEPAD.EXE). Voici plus d'exemples de comment faire ceci:
http://www.dotnetperls.com/process- Démarrez p>
Cependant, si vous souhaitez mettre un chemin dans, vous devez utiliser le chemin complet. Vous pouvez construire le chemin complet tout en vous souciant de la voie relative à l'aide de la méthode répertoriée dans ce message: p>
http://social.msdn.microsoft.com/forums/en-us/vbgeneral/thread/e763ae8c-1284-43fe-9e55 -4b36f8780f1c p>
Il ressemblerait à ceci: p> Ceci est pour ouvrir un fichier dans un dossier que vous ajoutez à votre projet appelé Ressources. Si vous le souhaitez dans votre racine de votre projet, déposez simplement le dossier Ressources dans les deux cordes ci-dessus et vous serez prêt à partir. P> P>
sur une boîte Windows:
Démarrer le bloc-notes avec l'emplacement du fichier immédiatement suivant. Gagnez P>
process.start("notepad C:\Full\Directory\To\File\FileName.txt");
Vous devez vous assurer que le fichier est copié, vous ne pouvez pas utiliser
processus.start code> pour les ressources intégrées. Vérifiez les propriétés et définissez l'attribut
Copier sur le répertoire de sortie code> respectivement.