C# 打开目录并选中文件的相关问题
2015-09-15 15:52
555 查看
C# 打开文件夹并选中目录,本来很简单的一个要求,按照网上说的怎么也实现不了。
总是打开“我的文档”
后来多次尝试才知道是路径的问题,如果不是标准的路径是无法打开的。
比如路径中有 "\\\\" 这样的路径分隔符、估计是底层的C++参数输入要求太严格了。
我改成下面这样的处理。现在没发现其他的问题。
将不规则的路径转换为标准的路径
总是打开“我的文档”
后来多次尝试才知道是路径的问题,如果不是标准的路径是无法打开的。
比如路径中有 "\\\\" 这样的路径分隔符、估计是底层的C++参数输入要求太严格了。
我改成下面这样的处理。现在没发现其他的问题。
string LocalPath = Common.ChangedToStandardPath(OriginalLocalPath,'\\'); //LocalPath 为文件路径 System.Diagnostics.Process.Start("Explorer", "/select," + LocalPath);
将不规则的路径转换为标准的路径
/// <summary> /// 路径转换为标准路径 /// </summary> /// <param name="strPath">路径</param> /// <param name="SplitChar">分割字符串</param> /// <returns></returns> public static string ChangedToStandardPath(string strPath,char SplitChar) { string strStandrtPath = ""; string[] Arry = strPath.Split(SplitChar); foreach (string SplitString in Arry) { if (string.IsNullOrEmpty(SplitString) == false && SplitString.Equals(SplitChar) == false) { strStandrtPath += (SplitString + SplitChar); } } strStandrtPath = strStandrtPath.Substring(0, strStandrtPath.Length -1); return strStandrtPath; }
相关文章推荐
- C# using用法详解
- 重新学习C# 之 变量
- C# 委托及各种写法
- c#绘制表格
- .NET基础--if-else与swirch的区别
- C#操作注册表
- 关于c#调用c编译器
- c#的委托和事件的实例学习
- .NET基础--if与else的匹配问题
- 几个常见的C#小问题
- C# 程序的关闭 讲究解释
- .NET基础--运算问题
- c# unicode 编码 中文转换 已测试(转)
- C#获得硬件信息(转载)
- C#中DateTime.Ticks属性及Unix时间戳转换
- vs2008 windows服务(C#) 开发与安装
- LeetCode 8 字符串转数字
- LeetCode 7 反转数字
- C#中TreeView实现适合两级节点的选中节点方法
- C# 保护自动挂掉进程的进程重启