java上传文件到共享文件夹_ASP.NET Core 上传文件到共享文件夹

参考资料:ASP.NET 上传文件到共享文件夹

创建共享文件夹参考资料:https://www.cnblogs.com/dansediao/p/5712657.html

一、配置上传文件相关参数并读取参数

1.配置appsettings.json

{ "FileUploadInfo": { "UploadPath": "\\\\172.21.0.10\\File", "DownloadPath": "http://213.10.11.126:8001/", "UserName": "ShareUser", "Password": "Password" } }

2.读取配置数据

2.1 新建实体类

/// /// 文件上传配置项 /// public class FileUploadConst { /// /// 上传地址 /// public string UploadPath { get; set; } /// /// 文件访问/下载地址 /// public string DownloadPath { get; set; } /// /// 访问共享目录用户名 /// public string UserName { get; set; } /// /// 访问共享目录密码 /// public string Password { get; set; } }

2.2  映射实体类与配置项

在startup.cs中配置

public void ConfigureServices(IServiceCollection services) { services.Configure(Configuration.GetSection("FileUploadInfo")); }

3.控制器中读取配置项,通过注入的方式

public FileUploadConst FileUploadConfig { get; set; } public UploadController(IOptions option) { FileUploadConfig = option.Value; }

二、上传文件

上传文件之前记得初始化构造方法,注入文件上传配置项!!!!!↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

1.连接文件服务器方法

/// /// 连接远程共享文件夹 /// /// 远程共享文件夹的路径 /// 用户名 /// 密码 private static bool connectState(string path, string userName, string passWord) { var flag = false; var 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(); var dosLine = "net use " + path + " " + passWord + " /user:" + userName; proc.StandardInput.WriteLine(dosLine); proc.StandardInput.WriteLine("exit"); while (!proc.HasExited) { proc.WaitForExit(1000); } var errormsg = proc.StandardError.ReadToEnd(); proc.StandardError.Close();if (string.IsNullOrEmpty(errormsg)) { flag = true; } else { throw new Exception(errormsg); } } catch (Exception ex) { WriteHelper.WriteFile(ex); throw ex; } finally { proc.........

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值