访问目录和子目录中的文件给我错误 - 不支持URI格式

时间:2014-02-18 14:56:14

标签: c# asp.net networking filesystems

我正在尝试从网页中获取Directory和子目录中的文件。我不知道这是否是我正在使用的正确理念。如果没有,请告诉我如何访问apache服务器上的IP地址上的文件和文件夹。

下面的代码告诉我“不支持URI格式”。错误。

我不想使用本地目录,因为我必须从该地址(apache服务器)访问文件

public static DataTable search_method(string searchkeyword)
    {
        string path = "http://192.168.2.10/mywebsite/";
        DataTable Table = new DataTable();
        Table.Columns.Add("AnchorText");
        Table.Columns.Add("dt");
        DataRow dr = null;
       foreach (string file in Directory.GetFiles(path, "*.*", SearchOption.AllDirectories))
        {
            if (file.Contains(searchkeyword))
            {
                    string AnchorText = Path.GetFileNameWithoutExtension(file);
                    DateTime dt = File.GetLastWriteTime(path);
                    dr = Table.NewRow();
                    dr[1] = AnchorText;
                    dr[2] = dt;
                    Table.Rows.Add(dr);
                }
        }
        return Table;

    }

1 个答案:

答案 0 :(得分:0)

错误告诉您错误,并且您无法执行此操作。

如果查看Directory.GetFiles Method,您会看到第一个参数是路径,即要搜索的目录。该目录是服务器上的路径,而不是URI,因此是URI formats are not supported。您可以使用它来搜索服务器上的目录,而不是您只能通过URL访问的其他人的网络服务器。

您可以使用WebRequest向网络服务器发出请求,但这类似于在浏览器中查看网页,而不是在GetFiles中搜索目录。

除非他们允许,否则您将无法查看Web服务器上目录中的文件列表。如果有,请尝试WebRequest