日期:2014-05-18  浏览次数:20661 次

如何通过http读取共享文件夹内容
服务器为A机器,在局域网中有台文件服务器,只能通过http访问其下的共享文件夹FILE。文件夹内存放的为ftp文件。如何在客户端浏览这些ftp文件。

------解决方案--------------------
首先,你文件服务器的需要共享的文件,在IIS中设置成虚拟路径,或者直接在文件上设置Web共享。

下面代码就可以从对应的路径把文件下载过来了,例如url="http://192.168.1.125/file/123.doc"
C# code

public static void DownloadToFile(string url, string saveName, CookieContainer cookie)
{
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    request.Credentials = CredentialCache.DefaultCredentials;
    if (cookie != null)
        request.CookieContainer = cookie;
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();

    using (Stream dataStream = response.GetResponseStream())
    {
        using (FileStream fs = new FileStream(saveName, FileMode.Create, FileAccess.Write))
        {
            byte[] buffer = new byte[1024];
            while (true)
            {
                int sizeRead = dataStream.Read(buffer, 0, buffer.Length);
                if (sizeRead > 0)
                    fs.Write(buffer, 0, sizeRead);
                else
                    break;
            }
            fs.Flush();
        }
    }
}