using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Net;
using System.IO;
using System.Text;namespace ftp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
ftp.ftp_Upload("172.19.112.3","tx","tx953","D:\\2011.ISO");
} private void result_TextChanged(object sender, EventArgs e)
{
result.Text = ftp.ftp_Upload("172.19.112.3", "tx", "tx953", "D:\\2011.ISO").ToString();
}
}
class ftp
{
public static bool ftp_Upload(string FtpURL, string username, string password, string FileName)
{ string strTemp = FileName;
strTemp = strTemp.Substring(strTemp.LastIndexOf(@"\") + 1);//截取文件名
Stream requestStream = null;
FileStream fileStream = null;
FtpWebResponse uploadResponse = null;
try
{
string uu = "ftp://" + FtpURL + strTemp;
FtpWebRequest uploadRequest = (FtpWebRequest)WebRequest.Create(uu);//创建完整的FTP服务地址
uploadRequest.Method = WebRequestMethods.Ftp.UploadFile; //设置FTP服务的操作为上载文件
uploadRequest.Proxy = null; //服务器通信代理
//设置用户名和密码
uploadRequest.Credentials = new NetworkCredential(username, password);//用户名和密码
requestStream = uploadRequest.GetRequestStream();
fileStream = File.Open(FileName, FileMode.Open);//打开指定路径的文件
byte[] buffer = new byte[4096];
int nRead;
while (true)//读取已打开文件的字节流写入缓冲区直至读取完毕
{
nRead = fileStream.Read(buffer, 0, buffer.Length);
if (nRead == 0)
break;
requestStream.Write(buffer, 0, buffer.Length);
}
fileStream.Close();
requestStream.Close();
uploadResponse = (FtpWebResponse)uploadRequest.GetResponse();//服务器返回响应
}
catch (Exception e)
{
//MainForm.AddViewListValue("上传ftp失败" + e.Message, 5);
Console.WriteLine("上传ftp失败" + e.Message, 5);
return false;
}
finally
{
if (uploadResponse != null)
uploadResponse.Close();
if (fileStream != null)
fileStream.Close();
if (requestStream != null)
requestStream.Close();
}
return true;
}
}
}
窗体上有个button 有个textbox 希望实现点击button 上传文件 并在textbox返回结果 目前程序编译没有错误 但是无法上传文件 求问题解决办法。
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Net;
using System.IO;
using System.Text;namespace ftp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
ftp.ftp_Upload("172.19.112.3","tx","tx953","D:\\2011.ISO");
} private void result_TextChanged(object sender, EventArgs e)
{
result.Text = ftp.ftp_Upload("172.19.112.3", "tx", "tx953", "D:\\2011.ISO").ToString();
}
}
class ftp
{
public static bool ftp_Upload(string FtpURL, string username, string password, string FileName)
{ string strTemp = FileName;
strTemp = strTemp.Substring(strTemp.LastIndexOf(@"\") + 1);//截取文件名
Stream requestStream = null;
FileStream fileStream = null;
FtpWebResponse uploadResponse = null;
try
{
string uu = "ftp://" + FtpURL + strTemp;
FtpWebRequest uploadRequest = (FtpWebRequest)WebRequest.Create(uu);//创建完整的FTP服务地址
uploadRequest.Method = WebRequestMethods.Ftp.UploadFile; //设置FTP服务的操作为上载文件
uploadRequest.Proxy = null; //服务器通信代理
//设置用户名和密码
uploadRequest.Credentials = new NetworkCredential(username, password);//用户名和密码
requestStream = uploadRequest.GetRequestStream();
fileStream = File.Open(FileName, FileMode.Open);//打开指定路径的文件
byte[] buffer = new byte[4096];
int nRead;
while (true)//读取已打开文件的字节流写入缓冲区直至读取完毕
{
nRead = fileStream.Read(buffer, 0, buffer.Length);
if (nRead == 0)
break;
requestStream.Write(buffer, 0, buffer.Length);
}
fileStream.Close();
requestStream.Close();
uploadResponse = (FtpWebResponse)uploadRequest.GetResponse();//服务器返回响应
}
catch (Exception e)
{
//MainForm.AddViewListValue("上传ftp失败" + e.Message, 5);
Console.WriteLine("上传ftp失败" + e.Message, 5);
return false;
}
finally
{
if (uploadResponse != null)
uploadResponse.Close();
if (fileStream != null)
fileStream.Close();
if (requestStream != null)
requestStream.Close();
}
return true;
}
}
}
窗体上有个button 有个textbox 希望实现点击button 上传文件 并在textbox返回结果 目前程序编译没有错误 但是无法上传文件 求问题解决办法。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货