networking - 检查文件夹是.NET中的本地资源还是网络资源

标签 networking directory .net

有没有一种快速的方法来检查我拥有的路径是在本地磁盘上还是在网络上的某个地方?我不能只检查它是否是UNC的驱动器号,因为这会错误地将映射的驱动器识别为本地驱动器。我以为DirectoryInfo对象中的值是 bool 值,但事实并非如此。

我已经找到了经典的VB代码(通过API)来执行此检查,但是到目前为止,.NET还没有。

最佳答案

                System.IO.DirectoryInfo di;
                if (System.IO.Path.IsPathRooted(di.FullName))
                {
                    System.IO.DriveInfo drive = new System.IO.DriveInfo(System.IO.Path.GetPathRoot(di.FullName));
                    if (drive.DriveType == System.IO.DriveType.Network)
                    {
                        // do something
                    }
                }
                else // shouldn't be reached
                {
                    // relative path => local
                }

关于networking - 检查文件夹是.NET中的本地资源还是网络资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2455348/

相关文章:

c# - 如何通过网络发送原始数据?

objective-c - 网络拓扑信息

Delphi5 目录存在()

c# - 如何使用列表和关系对象测试 fluent-NHibernate 的 PersistenceSpecification.VerifyTheMappings?

.net - PHP 与 .NET JSON Web 服务

c# - 在 .NET 中使用 Windows 凭据进行 FTP 连接

java - Java 套接字数组

linux - 如何使用 netcat 更改监听规则?

php - 文件和文件夹属性 - 编程 API

html - 用户无法访问但网络服务器可以访问的文件夹