-1

マシンの IP アドレスを使用して C:\inetpub\wwwroot\ にフォルダーを作成するにはどうすればよいですか? ff コードは私には機能しないようです。エラーが発生します:指定されたパスの形式はサポートされていません。

          `     string appPath = Request.PhysicalApplicationPath;
                string IPAddress = HttpContext.Current.Request.UserHostAddress;

                Directory.CreateDirectory(appPath + "//GM_KanbanTracking/" + IPAddress); error     here The given path's format is not supported.
                StreamWriter w;
                w = File.CreateText(appPath + "//GM_KanbanTracking/" + IPAddress +     "/test.txt");
                w.WriteLine(fileContents.ToString());
                w.Flush();
                w.Close();

`

4

1 に答える 1

0

通常の IPv4 アドレス (例: 192.168.1.1) を使用している場合でも、この場合のホスト アドレスは、次のような IPv6 アドレスである可能性があります2001:0:9d38:953c:cad:20fd:3f57:fa08。コロン ( :) はファイル名に使用できないため、次のように別のものに変更する必要があります。

string IPAddress = HttpContext.Current.Request.UserHostAddress.Replace(":", "_");

これにより、IP アドレスが2001_0_9d38_953c_cad_20fd_3f57_fa08有効なファイル名である に変換されます。

IPv4 アドレスを使用している場合、問題は残りのパス指定にあります。コロンだけでなく、スラッシュ ( /) も無効な文字です。サンプルコードは、機能するためにバックスラッシュでなければならないスラッシュを示しています。

于 2013-02-20T11:18:00.533 に答える