繁体   English   中英

Path.Combine中的非法字符

[英]illegal characters in Path.Combine

我有一个看起来像这样的ftp路径:
FTP://我|用户|名:mypassword@example.com/Test/file.txt

我正在尝试使用Path两个函数:
1. Path.GetDirectoryName
2. Path.Combine

两者都返回“路径中的非法字符”。
解决此问题的最佳解决方案是什么? 我需要获取目录,并且需要将其与其他文件url结合在一起。

使用Uri类提取Path部分,而不是使用Path类进行操作。

使用UriBuilder将其重新构造。

var fullPath = 
  new Uri(@"ftp://my|user|name:mypassword@example.com/Test/file.txt")
     .AbsolutePath;

为了从一个URI路径和查询字符串,你可以使用new Uri(someString).PathAndQuery在回答看到获取URL部分,而无需主机

要合并Url或Uri,您可以使用答案https://stackoverflow.com/a/23399048/3481183

该答案中描述的Uri.Combine函数也已测试过是否可以组合ftp部分。

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM