0

私のプロジェクトでは、最終的には、ネット上で作成または撮影した画像を保存し、作成した他のファイルを保存する必要がありますが、その方法はわかっています。問題は、たまたま画像を保存するときに、次のように作業することです。

using (var imgClient = new WebClient())
{
    Directory.CreateDirectory(imagesDirectory);
    imgClient.DownloadFile(imgUrl, imagesDirectory + m_ObjNameToUse + "(" + abv+ ")" + objNumber + ".jpeg");
}

この時点でメソッドを呼び出してDirectory.CreateDirectory、イメージを作成する前にディレクトリが常に作成されるようにし、クラッシュを防ぎます。

今私の問題は、文字列 imagesDirectory を使用していることです。これは、次のようにハードコードされた文字列です。

string imagesDirectory = "C:\\Creation_Folder\\Object_Sets\\Images\\" + _objSetName+ "\\";

今のところ、それは機能します。しかし、私は開発中であり、プロジェクトは最終的にリリースされます。プロジェクトの「Images」フォルダーの下に画像を保存し、_objSetName を新しいフォルダーとして追加して、作成された各画像を区別して、同じファイルに画像が多すぎないようにしたいと考えています。

Imagesだから私の質問は、プロジェクトに含まれるフォルダーを見つけて、その下にフォルダーを作成するようにアプリに指示するにはどうすればよい_objSetNameですか?

4

2 に答える 2

5

アプリケーションのベース フォルダを使用してみてくださいAppDomain.CurrentDomain.BaseFolder。これは、アプリケーションが配置されているフォルダーです。そこからは簡単です:

 string imagesDirectory = AppDomain.CurrentDomain.BaseFolder + "Object Sets\\Images\\" + _objSetName+ "\\";
于 2013-05-01T15:21:31.757 に答える