using System; using System.Text; using Shared.SimpleControl; using Shared.SimpleControl.Phone; namespace Shared { public class Utlis { ///// ///// 将int数值转换为占四个字节的byte数组 ///// ///// ///// //public static byte [] IntToByteArray (int i) //{ // byte [] result = new byte [4]; // // 由高位到低位 // result [0] = (byte)((i >> 24) & 0xFF); // result [1] = (byte)((i >> 16) & 0xFF); // result [2] = (byte)((i >> 8) & 0xFF); // result [3] = (byte)(i & 0xFF); // return result; //} ///// ///// byte[]转int ///// ///// ///// //public static int ByteArrayToInt (byte [] bytes) //{ // int value = 0; // // 由高位到低位 // for (int i = 0; i < 4; i++) { // int shift = (4 - 1 - i) * 8; // value += (bytes [i] & 0x000000FF) << shift;// 往高位游 // } // return value; //} /// /// 全局打印 /// public static void WriteLine (object mes) { #if DEBUG System.Console.WriteLine (mes); #endif } public static int StringToInt (string mStr) { try { return int.Parse (mStr); } catch { return 0; } } public static void ShowAppLinkStatus (AppLinkStatus mStatus) { switch (mStatus) { case AppLinkStatus.CloudLink: MainPage.WiFiStatus = "CrabtreeAdd/CloudLink.png"; break; case AppLinkStatus.CloudUnlink: MainPage.WiFiStatus = "CrabtreeAdd/CloudUnlink.png"; break; case AppLinkStatus.CloudOffline: MainPage.WiFiStatus = "CrabtreeAdd/CloudOffline.png"; break; case AppLinkStatus.WiFi: MainPage.WiFiStatus = "CrabtreeAdd/WiFi.png"; break; case AppLinkStatus.WiFiUnlink: MainPage.WiFiStatus = "CrabtreeAdd/WiFiUnlink.png"; break; case AppLinkStatus.WiFiOffline: MainPage.WiFiStatus = "CrabtreeAdd/WiFiOffline.png"; break; default: break; } Shared.Application.RunOnMainThread (() => { UserMiddle.btnLinkStatus.UnSelectedImagePath = MainPage.WiFiStatus; }); } /// /// 获取请求提交的语言参数 /// public static string GetPostLanguageType () { //L1APP默认英语 return LanguageTypeEnum.ENGLISH.ToString (); //return Language.CurrentLanguage == "Chinese" ? LanguageTypeEnum.CHINESE.ToString () : LanguageTypeEnum.ENGLISH.ToString (); } /// /// 弹窗提示 /// /// public static void ShowAlertOnMainThread (string mes) { Application.RunOnMainThread (() => { new Alert ("", mes, Language.StringByID (SimpleControl.R.MyInternationalizationString.Close)).Show (); }); } /// /// ShowTip /// /// /// 关闭时间 public static void ShowTip (string mes, int closeTime = 2) { if (MainPage.MainFrameLayout == null) return; var tip = new Tip () { Text = mes, CloseTime = closeTime, Direction = AMPopTipDirection.None, MaxWidth = MainPage.MainFrameLayout.Width }; tip.Show (MainPage.MainFrameLayout); } /// /// 获取时间戳(ss) /// /// /// public static DateTime UnixToDateTime (long unixTimeStamp) { DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime (new DateTime (1970, 1, 1)); // 当地时区 return startTime.AddSeconds (unixTimeStamp); } /// /// /// /// public static long DateTimeToUnix (DateTime dateTime) { DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime (new DateTime (1970, 1, 1)); // 当地时区 return (long)(dateTime - startTime).TotalSeconds; // 相差秒数 } /// /// /// /// /// public static DateTime UnixToDateTimeMS (long unixTimeStamp) { DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime (new DateTime (1970, 1, 1)); // 当地时区 return startTime.AddMilliseconds (unixTimeStamp); } /// /// /// /// /// /// public static string UnixToDateTimeWithFormatMS (long unixTimeStamp, string format = "yyyy") { DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime (new DateTime (1970, 1, 1)); // 当地时区 return startTime.AddMilliseconds (unixTimeStamp).ToString (format); } /// /// 生成随机字符串 /// /// 字符串的长度 /// public static string CreateRandomString (int length) { // 创建一个StringBuilder对象存储密码 StringBuilder sb = new StringBuilder (); //使用for循环把单个字符填充进StringBuilder对象里面变成14位密码字符串 for (int i = 0; i < length; i++) { Random random = new Random (Guid.NewGuid ().GetHashCode ()); //随机选择里面其中的一种字符生成 switch (random.Next (3)) { case 0: //调用生成生成随机数字的方法 sb.Append (createNum ()); break; case 1: //调用生成生成随机小写字母的方法 sb.Append (createSmallAbc ()); break; case 2: //调用生成生成随机大写字母的方法 sb.Append (createBigAbc ()); break; } } return sb.ToString (); } /// /// 生成单个随机数字 /// static int createNum () { Random random = new Random (Guid.NewGuid ().GetHashCode ()); int num = random.Next (10); return num; } /// /// 生成单个大写随机字母 /// static string createBigAbc () { //A-Z的 ASCII值为65-90 Random random = new Random (Guid.NewGuid ().GetHashCode ()); int num = random.Next (65, 91); string abc = Convert.ToChar (num).ToString (); return abc; } /// /// 生成单个小写随机字母 /// static string createSmallAbc () { //a-z的 ASCII值为97-122 Random random = new Random (Guid.NewGuid ().GetHashCode ()); int num = random.Next (97, 123); string abc = Convert.ToChar (num).ToString (); return abc; } public static string MD5Encrypt (string mPassword) { var md5 = new System.Security.Cryptography.MD5CryptoServiceProvider (); return BitConverter.ToString (md5.ComputeHash (Encoding.UTF8.GetBytes (mPassword))).Replace ("-", ""); } ///// 字符串截取并拼接 ///// ///// ///// //public static string DelMacString (string str) //{ // string restr = ""; // if (!string.IsNullOrEmpty (str)) { // ArrayList array = GetSeparateSubString (str, 2); // foreach (string arr in array) { // restr += arr + "."; // } // } // return restr.TrimEnd ('.'); //} //static ArrayList GetSeparateSubString (string txtString, int charNumber) //charNumber为要截取的每段的长度 //{ // ArrayList arrlist = new ArrayList (); // string tempStr = txtString; // for (int i = 0; i < tempStr.Length; i += charNumber)//首先判断字符串的长度,循环截取,进去循环后首先判断字符串是否大于每段的长度 // { // if ((tempStr.Length - i) > charNumber)//如果是,就截取 // { // arrlist.Add (tempStr.Substring (i, charNumber)); // } else { // arrlist.Add (tempStr.Substring (i));//如果不是,就截取最后剩下的那部分 // } // } // return arrlist; //} } }