0

我正在创建小型 FTP 客户端并遇到小问题,请您帮我解决一下。

所以我从 comboBox1.Text 中获取文本,可以说“/test/sql/it/”但是为了创建新目录,我需要提取“it”和“/test/sql/”“it”作为新目录名称和“/test/sql/”位置用于创建新文件夹。

对于第二部分,我可以使用:

string s = comboBox1.Text;
        s = s.Remove(s.LastIndexOf('/'));
        s = s.Remove(s.LastIndexOf('/'));
        s = s + "/";
        MessageBox.Show(s);
        //result "/test/sql/"

但是如何获得第一部分“它”呢?

4

3 回答 3

1

试试这个,

string s = comboBox1.Text;
string path_s = Path.GetFileName( Path.GetDirectoryName( path ) );

对 GetDirectoryName 的内部调用将返回完整路径,而对 GetFileName() 的外部调用将返回最后一个路径组件 - 这将是文件夹名称。

于 2013-03-22T18:38:11.667 回答
1

试试这个:

string path = "/test/sql/it/";
string[] directories = path.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
string lastDir = directories.Last();
于 2013-03-22T18:38:40.613 回答
0

使用这个正则表达式:

.+(/.+/)$

这将/it/在第 1 组中为您提供。
如果您不想要斜杠,请改用此正则表达式:

.+/(.+)/$ 
于 2013-03-22T18:44:03.007 回答