C# 如何替换部分路径?

C# 如何替换部分路径?,c#,path,C#,Path,我正在制作一个批处理应用程序,它应该转换目录a中的文件,并将它们放在目录B中,在相对根目录之后保留相同的路径。为此,我需要某种方法将输入文件路径转换为输出文件路径 例如: before: C:\MyProject\Files\Input_\file1.cs after: C:\MyProject\Files\Output\file1.cs ——————————————————— ———————— ↑ ↓ these remain unchange

我正在制作一个批处理应用程序,它应该转换目录a中的文件,并将它们放在目录B中,在相对根目录之后保留相同的路径。为此,我需要某种方法将输入文件路径转换为输出文件路径

例如:

before: C:\MyProject\Files\Input_\file1.cs
after:  C:\MyProject\Files\Output\file1.cs
        ———————————————————       ————————
          ↑ ↓ these remain unchanged ↑ ↓
        ———————————————————       —————————————————————————
before: C:\MyProject\Files\Input_\folder\subfolder\file2.cs
after:  C:\MyProject\Files\Output\folder\subfolder\file2.cs
我希望我想要的东西很清楚。
System.IO
名称空间中是否有标准方法可以执行此操作?如果没有,我该如何实现它?

类可能会有帮助(至少在从路径拆分文件名并合并回路径中),但您可能也需要自己执行一些字符串操作来替换路径的特定组件。

类可能会有帮助(至少在从路径拆分文件名并合并回路径中),但是您可能也需要自己进行一些字符串操作,以替换路径的特定组件。

string.replace(“输入”、“输出”)

获取路径并分配给字符串变量并进行替换。

string.replace(“输入”、“输出”)


获取路径并分配给字符串变量并进行替换。

您可以对路径的字符串使用string.replace。

您可以对路径的字符串使用string.replace。

+1。如果你知道确切的部分,并确保它不会发生在错误的地方,这种方法是有效的。不幸的是,即使使用
Path
类,您仍然需要合理数量的原始字符串操作。如果输入是
C:\MyProjects\file.cs\Whatever\file.cs会怎么样?您可以创建一个私有方法,该方法将字符串替换为参数。并返回新字符串+1。如果你知道确切的部分,并确保它不会发生在错误的地方,这种方法是有效的。不幸的是,即使使用
Path
类,您仍然需要合理数量的原始字符串操作。如果输入是
C:\MyProjects\file.cs\Whatever\file.cs会怎么样?您可以创建一个私有方法,该方法将字符串替换为参数。并返回新字符串