FtpWebRequest 上传文件的问题

lihuinihao6315 2009-07-22 04:45:24
    class FtpClass
{
/// <summary>
/// ftp操作
/// ftpUrl--ftp的地址,user--ftp用户名 password--ftp密码
/// </summary>
FtpWebRequest request;
//string ftpUrl = string.Empty;
string user = "ALLTANG01\\ASPNET";
string password = "";


/// <summary>
/// 二进制数据流操作
/// myStream--读取数据,length--数据流长度,fileData--二进制数据
/// file--要传输文件全名,fileName--要传输文件名称,fileType--要传输文件的后缀名
/// </summary>
int length;
byte[] fileData;
string file = string.Empty;
string fileName = string.Empty;
string fileType = string.Empty;


/// <summary>
/// 打开要传输的文件
/// </summary>
/// <param name="filePath">文件路径</param>
public void OpenFile(string filePath)
{
if (!File.Exists(filePath))
{
return;
}
fileName = filePath.Substring(filePath.LastIndexOf("\\") + 1, (filePath.LastIndexOf(".") - filePath.LastIndexOf("\\") - 1));
fileType = filePath.Substring(filePath.LastIndexOf(".") + 1, (filePath.Length - filePath.LastIndexOf(".") - 1));
file = fileName + "." + fileType;

fileData = File.ReadAllBytes(filePath);
length = fileData.Length;

}

/// <summary>
/// 连接并上传ftp服务
/// </summary>
/// <param name="ftpUrl">ftp地址</param>
public string Connect(string filePath, string ftpUrl)
{
// 分析需要上传的文件
this.OpenFile(filePath);

FtpWebRequest request = (FtpWebRequest)WebRequest.Create(new Uri("ftp://" + 实际IP + file));
// FtpWebRequest request = (FtpWebRequest)WebRequest.Create(new Uri("ftp://" + "localhost/"+ftpUrl+ file));
// ftp用户名和密码
request.Credentials = new NetworkCredential(user, password);
// 默认为true,连接不会被关闭,在一个命令之后被执行
request.KeepAlive = false;
// 指定执行什么命令
request.Method = WebRequestMethods.Ftp.UploadFile;
// 指定数据传输类型
request.UseBinary = true;
//
request.Credentials = new NetworkCredential(user, password);
// 上传文件时通知服务器文件的大小
request.ContentLength = fileData.Length;
request.Proxy = null;

Stream requestStream = request.GetRequestStream();
requestStream.Write(fileData, 0, fileData.Length);
requestStream.Close();

FtpWebResponse response = (FtpWebResponse)request.GetResponse();

// MessageBox.Show("Upload File Complete, status:" + response.StatusCode + "--" + response.StatusDescription);
response.Close();
return "Upload File Complete, status:" + response.StatusCode + "--" + response.StatusDescription;
}
}
以上是代码
我的FTP设置是ALTANG01\Administrator密码为空
在选择文件并 上传时报错,错误为:远程服务器返回错误: (530) 未登录。
请高手帮忙解决,不需要代码,只需要告诉哪里错了,如何解决。解释详细。。谢谢
...全文
187 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuejie09242 2009-07-24
  • 打赏
  • 举报
回复
应该是Tfp服务器设置的问题。
lihuinihao6315 2009-07-24
  • 打赏
  • 举报
回复
我的FTP 启动后无法 浏览,浏览总是报密码不对,只有匿名才能进,别的都进不去
lihuinihao6315 2009-07-23
  • 打赏
  • 举报
回复
wdzr_826 2009-07-22
  • 打赏
  • 举报
回复
帮顶
lihuinihao6315 2009-07-22
  • 打赏
  • 举报
回复
我的FTP 启动后无法 浏览,浏览总是报密码不对
lihuinihao6315 2009-07-22
  • 打赏
  • 举报
回复
ftp用户对文件夹的 操作权限,都点上了。
屯里的人 2009-07-22
  • 打赏
  • 举报
回复
我的FTP设置为所有用户试试。。。吧所有的权限都给它,是不是权限的限制啊?
hztltgg 2009-07-22
  • 打赏
  • 举报
回复
匿名用户用anonymous看看
gongsun 2009-07-22
  • 打赏
  • 举报
回复
ftp用户对文件夹的 操作权限,都点上。

注意设置防火墙,允许ftp服务。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧