社区
C#
帖子详情
着急等!
lizhenlz
2004-11-13 08:36:47
ftp上传一个文件行,反复上传就不行,是什么原因呀?
...全文
100
7
打赏
收藏
着急等!
ftp上传一个文件行,反复上传就不行,是什么原因呀?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Andy__Huang
2004-11-14
打赏
举报
回复
代碼太多了
lizhenlz
2004-11-14
打赏
举报
回复
private Socket createDataSocket()
{
sendCommand("PASV");
if(retValue != 227)
{
throw new IOException(reply.Substring(4));
}
int index1 = reply.IndexOf('(');
int index2 = reply.IndexOf(')');
string ipData = reply.Substring(index1+1,index2-index1-1);
int[] parts = new int[6];
int len = ipData.Length;
int partCount = 0;
string buf="";
for (int i = 0; i < len && partCount <= 6; i++)
{
char ch = Char.Parse(ipData.Substring(i,1));
if (Char.IsDigit(ch))
buf+=ch;
else if (ch != ',')
{
throw new IOException("Malformed PASV reply: " + reply);
}
if (ch == ',' || i+1 == len)
{
try
{
parts[partCount++] = Int32.Parse(buf);
buf="";
}
catch (Exception)
{
throw new IOException("Malformed PASV reply: " + reply);
}
}
}
string ipAddress = parts[0] + "."+ parts[1]+ "." + parts[2] + "." + parts[3];
int port = (parts[4] << 8) + parts[5];
Socket s = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
IPEndPoint ep = new IPEndPoint(Dns.Resolve(ipAddress).AddressList[0], port);
try
{
s.Connect(ep);
}
catch(Exception)
{
throw new IOException("Can't connect to remote server");
}
return s;
/// Upload a file.
///
public void upload(string fileName)
{
upload(fileName,false);
}
///
/// Upload a file and set the resume flag.
///
public void upload(string fileName,Boolean resume)
{
if(!logined)
{
login();
}
Socket cSocket = createDataSocket();
long offset=0;
if(resume)
{
try
{
setBinaryMode(true);
offset = getFileSize(fileName);
}
catch(Exception)
{
offset = 0;
}
}
if(offset > 0 )
{
sendCommand("REST " + offset);
if(retValue != 350)
{
//throw new IOException(reply.Substring(4));
//Remote server may not support resuming.
offset = 0;
}
}
sendCommand("STOR "+Path.GetFileName(fileName));
if( !(retValue == 125 || retValue == 150) )
{
throw new IOException(reply.Substring(4));
}
// open input stream to read source file
FileStream input = new FileStream(fileName,FileMode.Open);
if(offset != 0)
{
if(debug)
{
Console.WriteLine("seeking to " + offset);
}
input.Seek(offset,SeekOrigin.Begin);
}
Console.WriteLine("Uploading file "+fileName+" to "+remotePath);
while ((bytes = input.Read(buffer,0,buffer.Length)) > 0)
{
cSocket.Send(buffer, bytes, 0);
}
input.Close();
Console.WriteLine("");
if (cSocket.Connected)
{
cSocket.Close();
}
readReply();
if( !(retValue == 226 || retValue == 250) )
{
throw new IOException(reply.Substring(4));
}
}
}
520NET
2004-11-14
打赏
举报
回复
LG
zhanghw20030303
2004-11-14
打赏
举报
回复
源码贴出来看看
hivak47
2004-11-14
打赏
举报
回复
是不是你的源程序有问题?
hivak47
2004-11-14
打赏
举报
回复
有源码吗?
孟子E章
2004-11-13
打赏
举报
回复
ftp是你自己写的?那一定是代码没有写好啦,好好检查一下吧,网上也有这方面的例子
u盘 计算机管理 没有就绪,U盘无法识别先别
着急
扔!这五步操作还能挽救一下...
USB接口我们一定不会陌生,键盘、鼠标、U盘、移动硬盘等等硬件都需要通过USB接口连接到电脑。...这个时候难免就会怀疑是不是U盘损坏,其实当你遇到电脑无法识别U盘的时候也不用太过
着急
,S姐帮你一步一步来解...
“不用
着急
,慢慢来”,英语怎么说?
在和客户聊天时,说到一个事情,我本来想说“不
着急
,慢慢来就可以了”,但是发现只会说no urgent(后来发现,老外根本不这样说),居然就在不知道怎么说了,好尴尬!所以就网上查了查资料,记下来。 我们经常需要...
别
着急
!除了花瓣,你还有这些强力素材网站!
源自:别
着急
!除了花瓣,你还有这些强力素材网站! 前不久知名素材网站花瓣网突然“挂了” 官方宣称网升级维护一个月 花瓣确实是一个非常好用的创意素材库 这么一关损失不小 但是人在江湖飘 没有几个好用的素材库傍...
frida调试不了怎么办?
着急
,在线等!
一、目标 frida越来越流行,针对他的检测也越来越多了,什么特征串检测,TracerPid检测,双进程保护。搞的我们茶饭不思,啤酒都不香了。 今天的目标是数字壳的调试,双进程保护。 二、步骤 侦测下火力 ...
删库了,除了跑路还能怎么办?在线等!
他想知道有没有什么补救方法,在线等,挺
着急
的!写在前面虽然我们之前遇到的大多数的数据被删,都是运维同学或者 DBA 背锅的。但实际上,只要有数据操作权限的同学,都有可能踩到误删数据这条线。今天我们就来聊聊...
C#
111,098
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章