繁体   English   中英

SFTP帮助。 用C#保存文件

[英]SFTP Help. Save a file in C#

我正在尝试在C#中保存sftp文件。 在SaveFileDialog上找到了此示例,但无法在应用程序上使用它(实际上,每当尝试使用SaveFileDialog时,都会提示它不存在,并且无法解决问题,这时会出现错误)

这是保存文件的正确方法吗? 我不是单击按钮,而是从另一个位置获取sftp文件,并将其保存在本地,以便可以在其上执行一些命令。

如果有帮助,我正在使用Microsoft Visual Studio 2010。

编辑:我想我把我发现的例子弄糊涂了。 这是我获取文件的方式:

   protected void Page_Load(object sender, EventArgs e)
    {
   Sftp sftp = new AmexSFTP.src.Sftp(Config.sSFTPUrl,
                                     Config.sSFTPAccount,
                                     Config.sSFTPPasswd);
   // Connect to SFTP server
   sftp.Connect();

   List<string> InputFiles = sftp.GetFileList("output");

   //Save files in for each loop here...
  ....}

    public Sftp(string sftpHost, string user, string password)
        : base(sftpHost, user, password)
    {
        Init();
    }

    private void Init()
    {
        m_monitor = new MyProgressMonitor(this);
    }

    public List<string> GetFileList(string path)
    {
        List<string> list = new List<string>();
        foreach (Tamir.SharpSsh.jsch.ChannelSftp.LsEntry entry in SftpChannel.ls(path))
        {
            list.Add(entry.getFilename().ToString());
        }
        return list.ToList();
    }

也许SaveFileDialog不正确? 这是我在所有Google搜索结果中找到的,所以我以为是。

谢谢!

我认为您使事情有些混乱。 除非我没有记错,否则Page_Load()方法是ASP.NET WebForms项目的一部分。 如果真是这样,那么您就在混合各种技术:SaveFileDialog是一个WinForms控件,通常用于客户端应用程序,而不是网页的代码隐藏代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM