zoukankan      html  css  js  c++  java
  • asp.net 服务器 上传文件到 FTP服务器

    private string ftpServerIP = "服务器ip";//服务器ip
    private string ftpUserID = "ftp的用户名";//用户名
    private string ftpPassword = "ftp的密码";//密码
    //filename 为本地文件的绝对路径
    //serverDir为服务器上的目录
    private void Upload(string filename,string serverDir)
    {
    FileInfo fileInf = new FileInfo(filename);
    
    string uri = string.Format("ftp://{0}/{1}/{2}", ftpServerIP,serverDir,fileInf.Name);
    FtpWebRequest reqFTP;
    
    // 根据uri创建FtpWebRequest对象 
    reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
    
    // ftp用户名和密码
    reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
    
    // 默认为true,连接不会被关闭
    // 在一个命令之后被执行
    reqFTP.KeepAlive = false;
    
    // 指定执行什么命令
    reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
    
    // 指定数据传输类型
    reqFTP.UseBinary = true;
    
    // 上传文件时通知服务器文件的大小
    reqFTP.ContentLength = fileInf.Length;
    
    // 缓冲大小设置为2kb
    int buffLength = 2048;
    
    byte[] buff = new byte[buffLength];
    int contentLen;
    
    // 打开一个文件流 (System.IO.FileStream) 去读上传的文件
    FileStream fs = fileInf.OpenRead();
    try
    {
    // 把上传的文件写入流
    Stream strm = reqFTP.GetRequestStream();
    
    // 每次读文件流的2kb
    contentLen = fs.Read(buff, 0, buffLength);
    
    // 流内容没有结束
    while (contentLen != 0)
    {
    // 把内容从file stream 写入 upload stream
    strm.Write(buff, 0, contentLen);
    
    contentLen = fs.Read(buff, 0, buffLength);
    }
    
    // 关闭两个流
    strm.Close();
    fs.Close();
    }
    catch (Exception ex)
    {
    // MessageBox.Show(ex.Message, "Upload Error");
    Response.Write("Upload Error:" + ex.Message);
    }
    }
    
    调用方法
    string filename = "D:\test.txt"; //本地文件,需要上传的文件
    string serverDir = "img"; //上传到服务器的目录,必须存在
    Upload
    
    (filename,serverDir);
  • 相关阅读:
    echarts 报表使用
    Eclipse Java注释模板设置详解
    简单实现支付密码输入框 By HL
    一个label 混搭不同颜色,不同字体的文字.. by 徐
    有关MVC设计模式 #DF
    自定义粘贴板-陈鹏
    TableView 常用技巧与功能详解
    ios 类别和扩展-赵小波
    推荐一本书--《浪潮之巅》(完整版的哦)----董鑫
    iOS block的用法 by -- 周傅琦君
  • 原文地址:https://www.cnblogs.com/lujin49/p/3460711.html
Copyright © 2011-2022 走看看