2 d28905 d28905 于 2016.04.25 17:56 提问

C#上传到ftp文件加密问题

上传功能:private void Upload(string filename) //上传功能
{
FileInfo fileInf = new FileInfo(filename);
string uri = "ftp://" + ftpServerIP + "/" + fileInf.Name; //uri登录方式
FtpWebRequest reqFTP;
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + ftpServerIP + "/" + fileInf.Name));

reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
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;
//打开一个文件流来读入上传的文件
FileStream fs = fileInf.OpenRead();

        try
        {

            // 把要上传的文件写入流


            Stream strm=reqFTP.GetRequestStream();



            //从文件流中读取数据,一次读2kb大小的数据 
            contentLen = fs.Read(buff, 0, buffLength);

            // Till Stream content ends
            while (contentLen != 0)
            {
                //把文件的内容从文件流写到FTP上传流中 
                strm.Write(buff, 0, contentLen);
                contentLen = fs.Read(buff, 0, buffLength);
            }

            //关闭文件流和请求流 
            strm.Close();
            fs.Close();

        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message, "上传出错");
        }
    }

加密功能:
public static String Encrypt(String Key, String str)
{
byte[] bKey = Encoding.UTF8.GetBytes(Key.Substring(0, 8));
byte[] bIV = IV;
byte[] bStr = Encoding.UTF8.GetBytes(str);
try
{
DESCryptoServiceProvider desc = new DESCryptoServiceProvider();
MemoryStream mStream = new MemoryStream();
CryptoStream cStream = new CryptoStream(mStream, desc.CreateEncryptor(bKey, bIV), CryptoStreamMode.Write);
cStream.Write(bStr, 0, bStr.Length);
cStream.FlushFinalBlock();
return Convert.ToBase64String(mStream.ToArray());
}
catch
{
return string.Empty;
}
}
我调用加密函数显示cannot 'string' to 'System.IO.Stream',求大神指点

1个回答

CSDNXIAOD
CSDNXIAOD   2016.04.25 18:02

C#上传文件到ftp
C# FTP上传文件至服务器代码
C# FTP上传文件至服务器代码
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
【转】C# 上传本地文件至ftp上的方法
转自:http://blog.csdn.net/gxxloveszj/article/details/9120643 2013-06-18 15:13 1926人阅读 评论(0) 收藏 举报 .NET编程实现FTP上传文件 1.WebClient异步上传 关键知识说明: WebClient类提供4个异步上传方法,使用方法都是差不多的. WebClient.Uploa
C# FTP上传文件及文件夹至服务器代码
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.IO; using System.Net; using System.Globalization
【转】c# 如何实现用ftp类上传目录文件
转自:http://www.debugease.com/aspdotnet/1090.html 将本地目录中的所有文件(包括子目录)用ftp的方式上传到远程服务器中的某个目录中,要求保存远程目录的目录结构与本地目录结构一致。网上有一些多文件ftp上传的实例,但如何实现包含目录结构的上传呢 解决方案 » 安装 serv-u 后 即可   
Ftp客户端实现:Ftp文件上传,Ftp文件加密,Ftp文件夹上传
FTP 客户端实现 1.单文件上传 2.多文件上传 3.加密文件 4.下载文件 5.解密文件 6.文件冲突 7.文件夹上传
C# 上传本地文件至ftp上的方法
.NET编程实现FTP上传文件 1.WebClient异步上传 关键知识说明: WebClient类提供4个异步上传方法,使用方法都是差不多的. WebClient.UploadDataAsync方法 将数据缓冲区上载到指定的资源 WebClient.UploadFileAsync方法 将指定的本地文件上载到指定的资源 WebClient.UploadStringAsync方法
从一个ftp上传文件至另一个ftp
FTPClient localFtpClient = new FTPClient(); FTPCLient targetFtpClient = new FTPClient(); //ftp连接 localFtpClient.connect(fileIP); boolean isLogin1 = localFtpClient.login(fileFtpName, fileFtpPassword...
ftp上传文件及将文件上传到指定目录下(多层目录下)
package com.xjg.util; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.net.SocketException; import org.apache.comm
C# 之 FTP服务器中文件上传与下载(二)
通过上一篇博客《C# 之 FTP服务器中文件上传与下载(一)》,我们已经创建好了一个FTP服务器,并且该服务器需要用户名和密码的验证。今天我们来实现文件的上传。 首先,我们前台需要一个FileUpload控件和一个Button控件 然后我们开始编写后台的上传代码 using Syst
FTP 文件上传 解决中文乱码
使用common-nets.jar FTPClient解决文件名中文乱码!import java.io.IOException;import java.io.InputStream;import java.net.SocketException;import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net
C# .NET FTP上传文件夹操作
#region 上传文件 /// /// 上传文件 /// /// 要上传到FTP服务器的文件 /// public static void UpLoadFile(string localFile, string ftpPath, string ftpUser, string ftpPassword) { if (ftpUser == null) { ftpUser =