2

我有一个指向例如“HKCU\Software\Test”的 System.Win32.RegistryKey 对象。.Name 属性填充了绝对路径。有没有办法只获取当前(相对)键名?

在上面的示例中,我正在寻找路径的“测试”部分。我正在寻找与 System.IO.Path.GetDirectoryName 等效的注册表,而无需手动解析路径。

4

3 回答 3

3

你可以打电话System.IO.Path.GetDirectoryName

这些Path.*函数(除了GetFullPath())是纯字符串操作函数,即使使用非文件系统路径也能正常工作。

于 2012-06-04T19:07:39.280 回答
2

您可以简单地使用System.IO.Path.GetDirectoryName(string)which 适用于注册表路径。

于 2012-06-04T19:07:33.057 回答
2

该问题要求相对值(只是测试)而不是绝对完整路径。该GetDirectoryName方法返回绝对路径。您要使用的方法是:

System.IO.Path.GetFileNameWithoutExtension(subkey.Name);

看到这个链接

于 2012-08-24T18:39:45.860 回答