1 public class FileUtil : System.Web.UI.Page
2 {
3 /// <summary>
4 /// 图片上传
5 /// </summary>
6 /// <param name="fileMessage">文件生成方式</param>
7 /// <returns></returns>
8 public UpFileResultMessage UpLoadFile(UpFileMessage fileMessage)
9 {
10 try
11 {
12 string now = DateTime.Today.ToString("yyyyMMdd");
13 string guid = Guid.NewGuid().ToString();
14
15 //获取文件扩展名
16 var fileSuffix = Path.GetExtension(fileMessage.OriginalFileName);
17
18 var uploadFolder = Path.Combine(System.Web.HttpContext.Current.Server.MapPath(ParmsConfig.UpFilePathUrl), now);
19
20 if (!Directory.Exists(uploadFolder))
21 {
22 Directory.CreateDirectory(uploadFolder);
23 }
24
25 //保存文件名
26 string saveFileName = guid + fileSuffix;
27 string filePath = Path.Combine(uploadFolder, saveFileName);
28
29
30 UpFileResultMessage upFileResult = new UpFileResultMessage()
31 {
32 IsSuccess = true,
33 FileName = Path.GetFileNameWithoutExtension(fileMessage.OriginalFileName),
34 FileSuffix = fileSuffix,
35 FilePath = string.Format(@"{0}/{1}", ParmsConfig.UpFileIPAddressUrl, now),
36 SaveFileName = guid
37 };
38
39 using (Stream sourceStream = fileMessage.FileStream)
40 {
41 using (FileStream targetStream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None))
42 {
43 const int bufferLen = 1024 * 4;//4KB
44 byte[] buffer = new byte[bufferLen];
45 int co