L'enregistrement des fichiers et images dans un dossier du projet à l'aide de chemin relatif
Dans mon projet, je vais finir par avoir à enregistrer des images créées ou pris sur le net et de les enregistrer d'autres fichiers, qui je ne sais comment faire. Le problème est que lorsque j'arrive à enregistrer mes images, je travaille comme ceci:
using (var imgClient = new WebClient())
{
Directory.CreateDirectory(imagesDirectory);
imgClient.DownloadFile(imgUrl, imagesDirectory + m_ObjNameToUse + "(" + abv+ ")" + objNumber + ".jpeg");
}
J'appelle le Directory.CreateDirectory
méthode en ce moment, pour vous assurer que le répertoire est toujours créé avant la création de l'image, la prévention d'un accident.
Maintenant, mon problème, c'est qu'il utilise la chaîne imagesDirectory, qui est une chaîne codée en dur à la recherche comme ceci:
string imagesDirectory = "C:\\Creation_Folder\\Object_Sets\\Images\\" + _objSetName+ "\\";
Qui fonctionne, à partir de maintenant. Mais je suis en cours de développement et le projet sera finalement libéré. Je voudrais enregistrer les images sous les "Images" dans le dossier du projet, l'ajout de la _objSetName comme un nouveau dossier pour les distinguer les unes des images créées pour éviter d'avoir trop d'images dans un même fichier.
Donc ma question est comment puis-je dire à mon application pour localiser le Images
dossier inclus dans le projet, et ensuite créer un dossier sous _objSetName
?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez essayer d'utiliser votre demande de dossier de base de
AppDomain.CurrentDomain.BaseFolder
. C'est le dossier où votre demande est situé. A partir de là c'est facile:Note de côté, vous voudrez probablement pour stocker les images dans un dossier comme
AppData
où votre utilisateur est la garantie d'avoir un accès en écriture. Les sous-répertoires de votre application seront susceptibles de n'être accessible que par les administrateurs de la machine.