From d41f1d4a478c1afcc43f3a5abb0ba76e376bc7c1 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期二, 09 三月 2021 15:23:25 +0800
Subject: [PATCH] 2

---
 HDL_ON/Common/FileUtlis.cs |  187 +++++++++++++++++++++-------------------------
 1 files changed, 86 insertions(+), 101 deletions(-)

diff --git a/HDL_ON/Common/FileUtlis.cs b/HDL_ON/Common/FileUtlis.cs
index 60198fe..0d3e2f2 100644
--- a/HDL_ON/Common/FileUtlis.cs
+++ b/HDL_ON/Common/FileUtlis.cs
@@ -1,6 +1,7 @@
 锘縰sing System;
 using System.Collections.Generic;
 using System.IO;
+using System.Net;
 using HDL_ON.Entity;
 
 namespace HDL_ON.Common
@@ -30,7 +31,7 @@
             {
                 if (string.IsNullOrEmpty(accountPath) || !accountPath.Contains(UserInfo.Current.ID))
                 {
-                    accountPath = Path.Combine(RootPath, UserInfo.Current.CurReginID);
+                    accountPath = Path.Combine(RootPath, UserInfo.Current.ID);
                     if (!Directory.Exists(accountPath))
                     {
                         Directory.CreateDirectory(accountPath);
@@ -47,9 +48,9 @@
         {
             get
             {
-                if (string.IsNullOrEmpty(regionPath) || !regionPath.Contains(UserInfo.Current.CurReginID ))
+                if (string.IsNullOrEmpty(regionPath) || !regionPath.Contains(DB_ResidenceData.Instance.CurrentRegion.RegionID ))
                 {
-                    regionPath = Path.Combine(AccountPath, UserInfo.Current.CurReginID);
+                    regionPath = Path.Combine(AccountPath, DB_ResidenceData.Instance.CurrentRegion.RegionID);
                     if (!Directory.Exists(regionPath))
                     {
                         Directory.CreateDirectory(regionPath);
@@ -58,16 +59,9 @@
                 return regionPath + "/";
             }
         }
-   
 
-        /// <summary>
-        /// 鏂囦欢鏄惁瀛樺湪
-        /// </summary>
-        /// <param name="filePath">File path.</param>
-        public bool Exists(string filePath)
-        {
-            return File.Exists(Path.Combine(Files.RootPath, filePath));
-        }
+        //public List<>
+
 
         /// <summary>
         /// 閬嶅巻鏂囦欢
@@ -126,7 +120,7 @@
                 fs = new FileStream(Path.Combine(RegionPath, fileName), FileMode.Create, FileAccess.Write);
                 fs.Write(bytes, 0, bytes.Length);
                 fs.Flush();
-                MainPage.Log("SaveFile:" + fileName);
+                MainPage.Log($"SaveFile:{fileName}");//Path:{RegionPath}
                 return true;
             }
             catch (Exception ex)
@@ -149,91 +143,6 @@
                 }
             }
         }
-        /// <summary>
-        /// 璇诲彇userInfo鏂囦欢
-        /// </summary>
-        /// <returns></returns>
-        public byte[] ReadUserInfo()
-        {
-            var fileName = "UserInfo_File";
-            FileStream fs = null;
-            try
-            {
-                if (File.Exists(Path.Combine(RootPath, fileName)))
-                {
-                    fs = new FileStream(Path.Combine(RootPath, fileName), FileMode.Open, FileAccess.Read);
-                }
-                else if (File.Exists(fileName))
-                {
-                    fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
-                }
-                else
-                {
-                    return new byte[0];
-                }
-                byte[] bytes = new byte[fs.Length];
-                fs.Read(bytes, 0, bytes.Length);
-                return bytes;
-            }
-            catch
-            {
-                return new byte[0];
-            }
-            finally
-            {
-                try
-                {
-                    if (fs != null)
-                    {
-                        fs.Close();
-                    }
-                }
-                catch
-                {
-
-                }
-            }
-
-        }
-        /// <summary>
-        /// 淇濆瓨userInfo
-        /// </summary>
-        /// <param name="bytes"></param>
-        /// <returns></returns>
-        public  bool WirteUserinfo(byte[] bytes)
-        {
-            var fileName = "UserInfo_File";
-            FileStream fs = null;
-
-            try
-            {
-                fs = new FileStream(Path.Combine(RootPath, fileName), FileMode.Create, FileAccess.Write);
-                fs.Write(bytes, 0, bytes.Length);
-                fs.Flush();
-                MainPage.Log("SaveFile:" + fileName);
-                return true;
-            }
-            catch (Exception ex)
-            {
-                MainPage.Log("FileUtiles Code 113:" + ex.ToString());
-                return false;
-            }
-            finally
-            {
-                try
-                {
-                    if (fs != null)
-                    {
-                        fs.Close();
-                    }
-                }
-                catch (Exception ex)
-                {
-                    MainPage.Log("FileUtils Code 121 :" + ex.ToString());
-                }
-            }
-        }
-
         /// <summary>
         /// 璇诲彇userInfo鏂囦欢
         /// </summary>
@@ -244,9 +153,9 @@
             FileStream fs = null;
             try
             {
-                if (File.Exists(Path.Combine(AccountPath, fileName)))
+                if (File.Exists(Path.Combine(RootPath, fileName)))
                 {
-                    fs = new FileStream(Path.Combine(AccountPath, fileName), FileMode.Open, FileAccess.Read);
+                    fs = new FileStream(Path.Combine(RootPath, fileName), FileMode.Open, FileAccess.Read);
                 }
                 else if (File.Exists(fileName))
                 {
@@ -292,7 +201,7 @@
 
             try
             {
-                fs = new FileStream(Path.Combine(AccountPath, fileName), FileMode.Create, FileAccess.Write);
+                fs = new FileStream(Path.Combine(RootPath, fileName), FileMode.Create, FileAccess.Write);
                 fs.Write(bytes, 0, bytes.Length);
                 fs.Flush();
                 MainPage.Log("SaveFile:" + fileName);
@@ -361,5 +270,81 @@
                 }
             }
         }
+
+
+
+        /// <summary>
+        /// 涓嬭浇缃戠粶鍥剧墖
+        /// </summary>
+        /// <param name="fileName"></param>
+        /// <param name="url"></param>
+        public void DownLoadImage(string fileName, string url,Action action)
+        {
+            if (!File.Exists(fileName))
+            {
+                System.Threading.Tasks.Task.Run(() => {
+                    FileStream fs = null;
+                    try
+                    {
+                        MyWebClient webClient = new MyWebClient();
+                        byte[] recevieBytes = webClient.DownloadData(new Uri(url));
+                        fs = new FileStream(Path.Combine(RootPath, fileName), FileMode.Create, FileAccess.Write);
+                        //fs = new FileStream(fileName, FileMode.Create, FileAccess.Write);
+                        fs.Write(recevieBytes, 0, recevieBytes.Length);
+                        fs.Flush();
+                    }
+                    catch (Exception ex) {
+                        MainPage.Log($"down image : {ex.Message}");
+                    }
+                    finally
+                    {
+                        if (fs != null)
+                        {
+                            fs.Close();
+                            action?.Invoke();
+                        }
+                    }
+                });
+            }
+        }
+
     }
+
+
+    public class MyWebClient : WebClient
+    {
+        int _timeout = 10000;
+
+        /// <summary>
+        /// 瓒呮椂鏃堕棿(姣)
+        /// </summary>
+        public int Timeout
+        {
+            get
+            {
+                return _timeout;
+            }
+            set
+            {
+                _timeout = value;
+            }
+        }
+        public MyWebClient()
+        {
+
+        }
+
+        public MyWebClient(int timeout)
+        {
+            this._timeout = timeout;
+        }
+
+        protected override WebRequest GetWebRequest(Uri address)
+        {
+            var result = base.GetWebRequest(address);
+            result.Timeout = this._timeout;
+            return result;
+        }
+    }
+
 }

--
Gitblit v1.8.0