您好,我如何在此代码中将驱动程序地址上的ftp替换为我们的服务器?
string[] filePaths = Directory.GetFiles(@"c:\MyDir\", "*.bmp");
例如:
string[] filePaths = Directory.GetFiles(@"our ftp address", "*.bmp");
第一个代码运行良好,但第二个代码无效!? TNX
答案 0 :(得分:1)
来自http://msdn.microsoft.com/en-us/library/system.net.ftpwebrequest.aspx的示例 DisplayFileFromServer(您的bmp文件)
`public static bool DisplayFileFromServer(Uri serverUri)
{
// The serverUri parameter should start with the ftp:// scheme.
if (serverUri.Scheme != Uri.UriSchemeFtp)
{
return false;
}
// Get the object used to communicate with the server.
WebClient request = new WebClient();
request.Credentials = new NetworkCredential ("anonymous","janeDoe@contoso.com");
try
{
byte [] newFileData = request.DownloadData (serverUri.ToString());
string fileString = System.Text.Encoding.UTF8.GetString(newFileData);
Console.WriteLine(fileString);
}
catch (WebException e)
{
Console.WriteLine(e.ToString());
}
return true;
}`
答案 1 :(得分:0)
这个简短的程序将使用ListDirectoryDetails方法列出FTP服务器中的文件和目录。还有ListDirectory方法,它只列出名称。
using System;
using System.Net;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
WebRequest ftp = FtpWebRequest.Create("ftp://ftp.ed.ac.uk/");
ftp.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
using (WebResponse rsp = ftp.GetResponse())
{
using (StreamReader reader = new StreamReader(rsp.GetResponseStream()))
{
Console.WriteLine(reader.ReadToEnd());
}
}
}
}
}