项目管理器: { 方法1:查询当前的所有项目名称(查询Project文件夹下所有(项目名称)子文件夹的名字) 方法2:替换某一个项目到当前项目(将项目文件夹下的PeiZhi和PN文件夹替换到根目录) 方法3:根据某一个项目的名称,更改该项目的名称(将项目文件夹下的文件名替换到新文件名) }
时间: 2024-02-07 07:02:51 浏览: 72
好的,根据你的需求,我为你编写了一个简单的C#类,代码如下:
```csharp
using System;
using System.IO;
namespace ProjectManager
{
class Program
{
static readonly string projectPath = "Project"; // 项目文件夹路径
static void Main(string[] args)
{
// 查询当前的所有项目名称
Console.WriteLine("所有项目名称:");
string[] projectNames = GetProjectNames();
foreach (string projectName in projectNames)
{
Console.WriteLine(projectName);
}
// 替换某一个项目到当前项目
ReplaceProject("项目名称");
// 根据某一个项目的名称,更改该项目的名称
RenameProject("原项目名称", "新项目名称");
}
// 查询当前的所有项目名称
static string[] GetProjectNames()
{
string[] projectFolders = Directory.GetDirectories(projectPath);
string[] projectNames = new string[projectFolders.Length];
for (int i = 0; i < projectFolders.Length; i++)
{
projectNames[i] = Path.GetFileName(projectFolders[i]);
}
return projectNames;
}
// 替换某一个项目到当前项目
static void ReplaceProject(string projectName)
{
string sourcePath = Path.Combine(projectPath, projectName, "PeiZhi");
string destinationPath = "根目录";
Directory.CreateDirectory(destinationPath); // 如果根目录不存在,则创建
DirectoryCopy(sourcePath, destinationPath, true);
}
// 根据某一个项目的名称,更改该项目的名称
static void RenameProject(string oldName, string newName)
{
string oldPath = Path.Combine(projectPath, oldName);
string newPath = Path.Combine(projectPath, newName);
Directory.Move(oldPath, newPath);
}
// 文件夹复制方法
static void DirectoryCopy(string sourceDirName, string destDirName, bool copySubDirs)
{
DirectoryInfo dir = new DirectoryInfo(sourceDirName);
DirectoryInfo[] dirs = dir.GetDirectories();
// 如果目标文件夹不存在,则创建
Directory.CreateDirectory(destDirName);
FileInfo[] files = dir.GetFiles();
foreach (FileInfo file in files)
{
string tempPath = Path.Combine(destDirName, file.Name);
file.CopyTo(tempPath, true);
}
if (copySubDirs)
{
foreach (DirectoryInfo subdir in dirs)
{
string tempPath = Path.Combine(destDirName, subdir.Name);
DirectoryCopy(subdir.FullName, tempPath, copySubDirs);
}
}
}
}
}
```
这个类实现了你提到的三个方法:
1. `GetProjectNames()`方法可以查询当前的所有项目名称,返回一个字符串数组。
2. `ReplaceProject(string projectName)`方法可以替换某一个项目到当前项目,将项目文件夹下的PeiZhi和PN文件夹替换到根目录。
3. `RenameProject(string oldName, string newName)`方法可以根据某一个项目的名称,更改该项目的名称,将项目文件夹下的文件名替换到新文件名。
阅读全文