2017-07-12 19 views
-3

私は、フォルダを新しい場所に移動するプログラムを作成しようとしています。 Directory.move()を使用すれば十分です。c#を使用してフォルダを移動する

私が抱えている問題は、テキストファイルから読み込まれたフォルダ名だけを移動したいということです。私は、私はフォルダを移動することができるポイントに持っている、私は配列にフォルダ名を読み込んだ。

私は、その配列から名前を確認して移動するロジックを考え出すことができないようです。これはどうすればできますか?

私はこのコードを持っている:

string sourceDirectory = @"C:\Users\Steve\Documents\old folder"; 
string destinationDirectory = @"C:\Users\Steve\Documents\new folder"; 
try 
{ 
    string[] file = File.ReadAllLines(@"C:\Users\Steve\Documents\Visual Studio 2015\Projects\FileCopier\FileCopier\File.txt"); 
    foreach(string folder in file) 
    { 
     Directory.Move(sourceDirectory, destinationDirectory); 
    } 
} 

これは、テキストファイルに名前だけを選ぶだけで、それらを移動していないようです。

+3

どんな*名をチェックしない、配列からフォルダ名を取るには*の手段、適切な場合はディレクトリを移動します。あなたがそれらのすべてを完了するまで、配列から次のフォルダ名を使って繰り返します。あなたはどんな特定の問題を抱えていますか?あなたの努力を示すコードを掲示してください*あなたが遭遇した*特定の問題*を説明し、より現実的な質問をしてください*どのようにこれを行うことができますか? –

+0

*「名前を確認する」*とは何を意味しますか?どのように宛先ディレクトリを定義していますか?元のパスの一部を保存しようとしていますか?いくつかのサンプル入力と期待される出力は、あなたがこれまで持っていた関連コードと一緒に非常に便利です。 –

+0

こんにちは@CSharpDude。私はあなたがStackOverflowの新しさを参照してください。将来正しく質問する方法については、https://stackoverflow.com/help/how-to-askおよびhttps://stackoverflow.com/help/mcveをご覧ください。また、誰かがあなたの質問に答えたときの対応については、https://stackoverflow.com/help/someone-answersを参照してください。 –

答えて

-1

あなたは、配列に値を読み、彼らとループを実行するが、あなたはあなたがあなたの配列のものと組み合わせたディレクトリ名に必要Directory.Move

を呼び出すときには、値を使用しています。

ファイルで作業すると、文字列を結合するための最良の方法は、あなたの問題のコードを使用してSystem.IO.Path.Combine

を使用しているフォルダ:

string sourceDirectory = @"C:\Users\Steve\Documents\old folder"; 
string destinationDirectory = @"C:\Users\Steve\Documents\new folder"; 
try 
{ 
    string[] file = File.ReadAllLines(@"C:\Users\Steve\Documents\Visual Studio 2015\Projects\FileCopier\FileCopier\File.txt"); 
    foreach(string folder in file) { 
     Directory.Move(Path.Combine(sourceDirectory, folder), Path.Combine(destinationDirectory, folder)); } 
    } 
} 
catch (Exception ex) {Console.WriteLine(Ex.ToString()); } 
+0

それを離れてもう少し考えてみたら、foreachループでこれを達成できると思いました。それは今まで繰り返されているようですが、私のテキストファイルで名前を選択していません。これは私が今までに得たものです。 – CSharpDude

+0

string sourceDirectory = @ "C:\ Users \ Steve \ Documents \ old folder"; 文字列destinationDirectory = @ "C:\ Users \ Steve \ Documents \新しいフォルダ"; try { string [] file = File.ReadAllLines(@ "C:\ Users \ Steve \ Documents \ Visual Studio 2015 \ Projects \ FileCopier \ FileCopier \ File.txt"); foreach(ファイル内の文字列フォルダ) { Directory.Move(sourceDirectory、destinationDirectory); } – CSharpDude

+0

ええと、ここに投稿するときに私の書式を保持するにはどうすればいいですか? – CSharpDude

関連する問題