当前位置: 移动技术网 > IT编程>开发语言>.net > ASPNET 下载共享文件

ASPNET 下载共享文件

2018年11月13日  | 移动技术网IT编程  | 我要评论

任家五小姐,克什米尔客车坠谷,濮阳李平安

执行

        public static void run()
        {
            var state = connectstate(@"\\192.168.10.160\excel\", "fish", "12345");
            if (state)
            {
                //    共享文件夹的目录  
                transportremotetolocal(@"\\192.168.10.160\excel\1ff79391090d4e8fa507ada85bae31ec.xlsx", @"d:\fish-a1.xlsx");
            }
        }

链接

/// <summary>  
        /// 连接远程共享文件夹  
        /// </summary>  
        /// <param name="path">远程共享文件夹的路径</param>  
        /// <param name="username">用户名</param>  
        /// <param name="password">密码</param>  
        /// <returns></returns>  
        public static bool connectstate(string path, string username, string password)
        {
            bool flag = false;
            process proc = new process();
            try
            {
                proc.startinfo.filename = "cmd.exe";
                proc.startinfo.useshellexecute = false;
                proc.startinfo.redirectstandardinput = true;
                proc.startinfo.redirectstandardoutput = true;
                proc.startinfo.redirectstandarderror = true;
                proc.startinfo.createnowindow = true;
                proc.start();
                string dosline = "net use " + path + " " + password + " /user:" + username;
                proc.standardinput.writeline(dosline);
                proc.standardinput.writeline("exit");
                while (!proc.hasexited)
                {
                    proc.waitforexit(1000);
                }
                string errormsg = proc.standarderror.readtoend();
                proc.standarderror.close();
                if (string.isnullorempty(errormsg))
                {
                    flag = true;
                }
                else
                {
                    throw new exception(errormsg);
                }
            }
            catch (exception ex)
            {
                throw ex;
            }
            finally
            {
                proc.close();
                proc.dispose();
            }
            return flag;
        }

下载

/// <summary>  
        /// 从远程服务器下载文件到本地  
        /// </summary>  
        /// <param name="savesrc">保存到本地的路径:下载到本地后的文件路径,包含文件的扩展名</param>  
        /// <param name="sourcesrc">远程服务器路径(共享文件夹路径)+ 远程服务器(共享文件夹)中的文件名称,包含扩展名</param>  
        public static void transportremotetolocal(string sourcesrc, string savesrc)
        {
            //  远程服务器文件  此处假定远程服务器共享文件夹下确实包含本文件,否则程序报错 
            if (!file.exists(sourcesrc))
                return; 
            filestream infilestream = file.openread(sourcesrc);
            //  从远程服务器下载到本地的文件  
            filestream outfilestream = new filestream(savesrc, filemode.openorcreate);
            byte[] buf = new byte[infilestream.length];
            int bytecount;
            while ((bytecount = infilestream.read(buf, 0, buf.length)) > 0)
            {
                outfilestream.write(buf, 0, bytecount);
            }
            infilestream.flush();
            infilestream.close();
            outfilestream.flush();
            outfilestream.close();
        }

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网