首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

VB.Net中,怎么利用FTP进行文件上传,最好有源码

2012-02-01 
VB.Net中,如何利用FTP进行文件上传,最好有源码.RT,麻烦各位前辈大虾们给帮帮忙,谢谢![解决办法]要用到两个

VB.Net中,如何利用FTP进行文件上传,最好有源码.
RT,

麻烦各位前辈大虾们给帮帮忙,

谢谢!

[解决办法]
要用到两个Sock通道,一个用于控制命令的发送和接收,另一个专门用来发送和接收文件数据.

首先由命令通道传送上传文件的指令(具体是什么指令现在很多FTP客户端软件都有显示,自己去查),
接到服务器返回成功的结果后,解析出服务器给出的IP和端口,用于数据通道的连接.

数据通道连接成功后就可以开始传数据了.
[解决办法]
有个C#的源码。。。。比较成熟的。。。可以工具转成 vb的。。。

不过太长 ,不能贴, 你在网上搜一搜 FTPFactory.cs


private string readLine()

{

 

while(true)

{

bytes = clientSocket.Receive(buffer, buffer.Length, 0);

mes += ASCII.GetString(buffer, 0, bytes);

if(bytes < buffer.Length)

{

break;

}

}

 

char[] seperator = {'\n'};

string[] mess = mes.Split(seperator);

 

if(mes.Length > 2)

{

mes = mess[mess.Length-2];

}

else

{

mes = mess[0];

}

 

if(!mes.Substring(3,1).Equals(" "))

{

return readLine();

}

 

if(debug)

{

for(int k=0;k < mess.Length-1;k++)

{

Console.WriteLine(mess[k]);

}

}

return mes;

}

 

private void sendCommand(String command)

{

 

Byte[] cmdBytes = 

Encoding.ASCII.GetBytes((command+"\r\n").ToCharArray());

clientSocket.Send(cmdBytes, cmdBytes.Length, 0);

readReply();

}

热点排行