2012-02-02 20 views
0
string EV_HOME = System.Environment.GetEnvironmentVariable("EV_HOME"); 
    string myFilePath = EV_HOME + "\\MyFolder\\MySubFolder"; 

と仮定EV_HOMEリターンCに付属のサブフォルダを削除するためのより良い方法何:\ MYPROGRAM \ leanrning \ anotherfolder私はフォルダanotherfolderを削除して取得できますかは、ファイルパスにC#2.0

この

CとしてmyFilePath:\ MYPROGRAM \ leanrning \ MyFolderという\私が知っていることはループであるMySubFolder

Ev_ HOME値を作成し、最後の文字列を新しい文字列として構築します。

ありがとうございました。

答えて

1
using System; 
using System.Collections.Generic; 
using System.Text; 

namespace ConsoleApplication12 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      string EV_HOME = @"C:\myprogram\leanrning\anotherfolder\"; 
      string parentFolder = new System.IO.DirectoryInfo(EV_HOME).Parent.FullName; 
      string myFilePath = parentFolder + "\\MyFolder\\MySubFolder"; 
      Console.WriteLine(myFilePath); 
     } 
    } 
} 
+0

wow、 'Parent.FullName' +1。ありがとう。 –

+0

多くのレベルで間違っています。 1)システムディレクトリへのパスを決してハードコーディングしないでください(環境変数であっても)。 2)パスを自分自身で連結したり、ディレクトリ区切り文字が何であるかを仮定したりしないでください。この目的のために明示的に設計された['Path.Combine'メソッド](http://msdn.microsoft.com/en-us/library/system.io.path.combine.aspx)を使用してください。 –

関連する問題