使用c#移动文件夹

时间:2017-07-12 23:38:07

标签: c#

我正在尝试编写一个程序来将文件夹移动到新位置。使用<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content"> <EditText android:id="@+id/dialog_edit_text" android:inputType="textEmailAddress" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout> 很容易。

我遇到的问题是我只想移动从文本文件中读取的文件夹名称。我已经到了可以移动文件夹的地步,我已经将文件夹名称读入数组。

我似乎无法想出检查该数组中的名称然后移动它们的逻辑。怎么可以这样做?

我有这段代码:

Directory.move()

它似乎并没有只挑选文本文件中的名称并只移动它们。

1 个答案:

答案 0 :(得分:-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()); }