我需要在一个按钮中显示一个路径。例如,此路径可能是
"c:\users\myuser\desktop\somefolder"按钮有一个固定的大小,因此我正在寻找一种方法来将文本转换为省略的版本。
我想我记得我见过一个函数,它可以将这么长的路径转换成类似于
"c:\users\...\somefolder"但我不记得这是一个自定义的解决方案,还是在.NET中有内置的方法。
我指的不是将字符串转换为
"c:\users\myuser\deskto~"谢谢。
发布于 2018-09-06 00:28:43
一个简单的实现可能如下所示:
var pathString = @"c:\users\myuser\desktop\somefolder";
var maxStringLength = 25;
while(pathString.Length > maxStringLength)
{
var splitPath = pathString.Split('\\').ToList();
splitPath.Remove("...");
splitPath[splitPath.Count - 2] = "...";
pathString = string.Join("\\", splitPath);
}请记住,这对路径的构成有一个非常天真的观点。您可能会发现需要对其进行更改,并根据您的需要编写适当的测试。
https://stackoverflow.com/questions/52183141
复制相似问题