当前位置: 首页 > article >正文

在 C# 中合并和解析相对路径

对于 C# 程序来说,组合相对路径通常很有用。例如,当您在 Visual Studio 中构建程序时,可执行程序将在源代码目录下的 bin\Debug 子目录中运行。如果您想要操作与项目源代码位于同一目录中的文件,则需要从可执行程序的位置向上移动两级目录树。

System.IO.Path 类提供了几个用于操作文件路径的静态方法。Combine方法将两个路径合并在一起。

不幸的是,该方法只是连接路径。例如,C:\Data\Test加上..\data.txt得到C:\Data\Test\..\data.txt,这可能不是您想要的。路径的..部分移动到父目录,因此您可能想要的是此示例中的C:\Data\data.txt

幸运的是,Path类的GetFullPath方法可以解析包含相对元素(例如此元素)的路径并返回绝对路径。

以下代码显示程序如何组合您输入的两条路径。

txtResult.Text = Path.GetFullPath( Path.Combine(txtPath1.Text, txtPath2.Text));

您可以使用类似的技术在程序中组合路径。例如,在 Visual Studio 中运行的程序可以使用以下代码来查找其源代码目录的路径。

Console.WriteLine(Path.GetFullPath( Path.Combine(Application.StartupPath, "..\\..")));

请注意,GetFullPath方法使用 \ 和 / 字符作为目录分隔符,因此以下代码也有效。

Console.WriteLine(Path.GetFullPath( Path.Combine(Application.StartupPath, "../..")));


http://www.kler.cn/a/469074.html

相关文章:

  • 探索 INFINI Console:提升 Elasticsearch 管理效率的新利器
  • 鸿蒙NEXT使用request模块实现本地文件上传
  • Karate 介绍与快速示例(API测试自动化、模拟、性能测试与UI自动化工具)
  • 某xx到家app逆向
  • 【新人系列】Python 入门(二十三):锁
  • 3.5 字典树(Trie)与后缀树
  • 【Adobe Acrobat PDF】Acrobat failed to connect to a DDE server.是怎么回事?
  • javafx fxml模式下 menu菜单增加图标
  • docker搭建gitlab和jenkins
  • 【机器遗忘之UNSIR算法】2023年IEEE Trans期刊论文:Fast yet effective machine unlearning
  • RepPoints: Point Set Representation for Object Detection
  • 鸿蒙HarmonyOS开发:拨打电话、短信服务、网络搜索、蜂窝数据、SIM卡管理、observer订阅管理
  • 【双层模型】考虑供需双侧的综合能源双层优化模型
  • 钓鱼攻击(Phishing)详解和实现 (网络安全)
  • 中国乡镇界shp全境arcgis格式shp数据乡镇名称下载后内容测评
  • redis源码系列--(四)--redis cluster
  • Mono里运行C#脚本25—mono_codegen
  • jenkins入门--安装jenkins
  • C++实现图书管理系统(Qt C++ GUI界面版)
  • Python抓取豆瓣电影Top250