【问题标题】:Exception: "URI formats are not supported"例外:“不支持 URI 格式”
【发布时间】:2012-09-15 15:43:14
【问题描述】:

我有一个指向目录的绝对本地路径:"file:\\C:\\Users\\john\\documents\\visual studio 2010\\Projects\\proj"

但是当我尝试将其放入 DirectoryInfo 的 ctor 时,我得到“不支持 URI 格式”异常。

我搜索并查看了 SO,但我只看到远程路径的解决方案,而不是本地路径。我希望有某种转换方法...

【问题讨论】:

    标签: c# .net .net-4.0


    【解决方案1】:
         string ImagePath = "";
    
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ImagePath);
            string a = "";
            try
            {
                HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
                Stream receiveStream = response.GetResponseStream();
                if (receiveStream.CanRead)
                { a = "OK"; }
            }
    
            catch { }
    

    【讨论】:

    • 虽然此代码可以解决问题,including an explanation 说明如何以及为什么解决问题将真正有助于提高您的帖子质量,并可能导致更多的赞成票。请记住,您正在为将来的读者回答问题,而不仅仅是现在提问的人。请edit您的回答添加解释并说明适用的限制和假设。
    【解决方案2】:

    我用 Path.Combine(MapPath()) 解决了同样的错误,以获取物理文件路径而不是 http:/// www 。

    【讨论】:

      【解决方案3】:

      试试这个

      ImagePath = "http://localhost/profilepics/abc.png";
         HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ImagePath);
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                  Stream receiveStream = response.GetResponseStream();
      

      【讨论】:

        【解决方案4】:
        string uriPath =
            "file:\\C:\\Users\\john\\documents\\visual studio 2010\\Projects\\proj";
        string localPath = new Uri(uriPath).LocalPath;
        

        【讨论】:

        • 不错!我遇到了同样的问题,然后疯狂地用 Google 搜索,效果很好。
        • 虽然它是一种可行的解决方案,但只有一种情况会失败。如果该位置包含 # 则本地路径将仅到达该位置。例如。如果你的路径是 file:///C:/foo/bar#/test.jpg 那么你会得到 C:/foo/bar 而不是你真正想要的。
        • 嗨。我希望该文件出现在 www.xxx.com/sitemap.xml。这个东西在本地主机上工作,但在服务器上没有这样的目录。在这种情况下如何对事物进行排序?
        • @It'satrap 也许你正在寻找Server.MapPath
        • 但是在使用你的路径之后,我在里面创建了更多的文件夹,而不是创建目录。看看stackoverflow.com/questions/63493899/…
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-12
        • 1970-01-01
        • 1970-01-01
        • 2021-10-30
        • 2016-05-08
        相关资源
        最近更新 更多