2011-01-17 18 views
0

このパスがある場合A/B // C A、B、Cを抽出したい /、//のストアインデックスについて考えていましたが、インデックスに基づいて値を抽出しましたがこれは、//単一のインデックスを持たないので、私のために問題を作り出します。パスから情報を抽出

/ -- index(1) 
/-- index(3) 
/-- index(4) 


    for (int index = 0; index <= path.Length; index++) 
    { 
      if (path[index] == '/') 
      { 
       pathIndex[index] = index; 
       pathChar[index] = "/"; 
       Console.WriteLine("Index {0} char{1}", pathIndex[index], pathChar[index]); 

      }    

    } 

しかし、他の方法があれば、より短くて良いでしょう。私はString.SplitStringSplitOptions.RemoveEmptyEntriesを渡し、あなたはsplitted内部の空の値をたくない場合は あらゆる努力を強く

答えて

2
var input = "A/B//C"; 
var splitted = input.Split(new[] { '/' }); 
for (var idx = 0; idx < splitted.Length; ++idx) 
    Console.WriteLine("Index={0} Value={1}", idx, splitted[idx]); 

を理解されるであろうかを知りたいです。

string currentDirectory = Directory.GetCurrentDirectory(); 

string[] parts = currentDirectory.Split(Path.DirectorySeparatorChar); 

foreach (var item in parts) 
    Console.WriteLine("{0}: {1}", currentDirectory.IndexOf(item), item); 

幸運:

+0

しかし、私はすべての情報を抽出したいのですが、 – Dena

+0

は次のようになります:A、B、C --->それらを配列に格納//、/ /インデックスが文字列 "//"エンティティとして2つのインデックスではない取引...私はあなたの努力に非常に感謝します – Dena

+0

分割方法の異なる区切り文字を入れる方法はあります – Dena

1

私は分割のためPath.DirectorySeparatorCharの代わり'/'を使用することを好みます!

+0

のようなものを追加することができますが、私はXML文書のパスを使って作業しています。私のプロジェクトはXMLパスを分析するように強制します..あなたのコード "Homam"はファイルパスにとって非常に良いと思います – Dena

関連する問題