C#long型數據轉化成時間戳(TimeSpan)


 

.Net中TimeSpan構造函數

1      
2         public TimeSpan(long ticks);   // 以 100 毫微秒為單位表示的時間段。
3 
4         public TimeSpan(int hours, int minutes, int seconds);
5     
6         public TimeSpan(int days, int hours, int minutes, int seconds);
7    
8         public TimeSpan(int days, int hours, int minutes, int seconds, int milliseconds);

.Net中構造TimeSpan函數

  1         // 返回表示指定天數的 System.TimeSpan,其中對天數的指定精確到最接近的毫秒。
  2         //
  3         // 參數:  value:  天數,精確到最接近的毫秒
  4         public static TimeSpan FromDays(double value);
  5       
  6         // 返回表示指定小時數的 System.TimeSpan,其中對小時數的指定精確到最接近的毫秒。
  7         // 參數:  value: 精確到最接近的毫秒的小時數。
  8         public static TimeSpan FromHours(double value);
  9       
 10         //  返回表示指定毫秒數的 System.TimeSpan。
 11         //   參數: value: 毫秒數。
 12                public static TimeSpan FromMilliseconds(double value);
 13    
 14         // 返回表示指定分鍾數的 System.TimeSpan,其中對分鍾數的指定精確到最接近的毫秒。
 15         // 參數: value:分鍾數,精確到最接近的毫秒。      
 16         public static TimeSpan FromMinutes(double value);
 17      
 18         // 返回表示指定秒數的 System.TimeSpan,其中對秒數的指定精確到最接近的毫秒。
 19         // 參數: value:    秒數,精確到最接近的毫秒。
 20         public static TimeSpan FromSeconds(double value);
 21       
 22         // 返回表示指定時間的 System.TimeSpan,其中對時間的指定以刻度為單位。
 23         //
 24         // 參數:  表示時間的刻度數。並非是毫秒數。
 25         public static TimeSpan FromTicks(long value);
 26      
 27         //     將時間間隔的字符串表示形式轉換為等效的 System.TimeSpan。
 28      
 29         // 參數: s:     一個字符串,用於指定進行轉換的時間間隔
 30         public static TimeSpan Parse(string s);
 31     
 32         //     使用指定的區域性特定格式信息,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan。
 33         //
 34         // 參數:   input:    一個字符串,用於指定進行轉換的時間間隔。
 35            //   formatProvider:   一個提供區域性特定的格式設置信息的對象。
 36         public static TimeSpan Parse(string input, IFormatProvider formatProvider);
 37     
 38         //     使用指定的格式、區域性特定格式信息和樣式,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan。 字符串表示形式的格式必須與一種指定的格式完全匹配。
 39         //   input:  一個字符串,用於指定進行轉換的時間間隔。
 40         //   formats:
 41         //     用於定義所需的 input 格式的標准或自定義格式字符串的數組。
 42         //   formatProvider:   一個對象,提供區域性特定的格式設置信息。 //
 43         //   styles:枚舉值的按位組合,用於定義可出現在 input 中的樣式元素。
 44         public static TimeSpan ParseExact(string input, string[] formats, IFormatProvider formatProvider, TimeSpanStyles styles);
 45       
 46         //     使用指定的格式字符串數組和區域性特定格式信息,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan。 字符串表示形式的格式必須與一種指定的格式完全匹配。
 47         //
 48         // 參數: input:     一個字符串,用於指定進行轉換的時間間隔。
 49         //   formats:  用於定義所需的 input 格式的標准或自定義格式字符串的數組。
 50         //   formatProvider: 一個對象,提供區域性特定的格式設置信息。
 51           
 52         public static TimeSpan ParseExact(string input, string[] formats, IFormatProvider formatProvider);
 53   
 54         //     使用指定的格式和區域性特定格式信息,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan。 字符串表示形式的格式必須與指定的格式完全匹配。    
 55         // 參數:   input:一個字符串,用於指定進行轉換的時間間隔。
 56         //   format: 用於定義所需的 input 格式的標准或自定義格式字符串。
 57         //   formatProvider: 一個對象,提供區域性特定的格式設置信息。
 58             public static TimeSpan ParseExact(string input, string format, IFormatProvider formatProvider);
 59       
 60         //     使用指定的格式、區域性特定格式信息和樣式,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan。 字符串表示形式的格式必須與指定的格式完全匹配。
 61         // 參數:   input:一個字符串,用於指定進行轉換的時間間隔。
 62         //   format:  用於定義所需的 input 格式的標准或自定義格式字符串。
 63               //   formatProvider:一個對象,提供區域性特定的格式設置信息。
 64         //   styles:     枚舉值的按位組合,用於定義可出現在 input 中的樣式元素。  
 65         public static TimeSpan ParseExact(string input, string format, IFormatProvider formatProvider, TimeSpanStyles styles);
 66       
 67         //     將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan,並返回一個指示轉換是否成功的值。
 68              // 參數:    s:   一個字符串,用於指定進行轉換的時間間隔。
 69             //   result: 此方法返回時,包含表示由 s 指定的時間間隔的對象;或者如果轉換失敗,則包含 System.TimeSpan.Zero。 此參數未經初始化即被傳遞。    
 70         public static bool TryParse(string s, out TimeSpan result);
 71      
 72         //     使用指定的區域性特定格式設置信息,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan,並返回一個指示轉換是否成功的值。
 73         // 參數: input:一個字符串,用於指定進行轉換的時間間隔。
 74         //   formatProvider:一個提供區域性特定的格式設置信息的對象。     
 75         //   result: 此方法返回時,包含表示由 input 指定的時間間隔的對象;或者如果轉換失敗,則包含 System.TimeSpan.Zero。 此參數未經初始化即被傳遞。
 76               public static bool TryParse(string input, IFormatProvider formatProvider, out TimeSpan result);
 77      
 78         //     使用指定的格式和區域性特定格式信息,將時間間隔的指定字符串表示形式轉換為其等效的 System.TimeSpan,並返回一個指示轉換是否成功的值。 字符串表示形式的格式必須與一種指定的格式完全匹配。
 79         // 參數: input:
 80         //     一個字符串,用於指定進行轉換的時間間隔。
 81         //
 82         //   formats:
 83         //     用於定義可接受的 input 格式的標准或自定義格式字符串的數組。
 84         //
 85         //   formatProvider:
 86         //     一個對象,提供區域性特定的格式設置信息。
 87         //
 88         //   result:
 89         //     此方法返回時,包含表示由 input 指定的時間間隔的對象;或者如果轉換失敗,則包含 System.TimeSpan.Zero。 此參數未經初始化即被傳遞。
 90         //
 91         // 返回結果:
 92         //     如果 true 成功轉換,則為 input;否則為 false。
 93         public static bool TryParseExact(string input, string[] formats, IFormatProvider formatProvider, out TimeSpan result);
 94         //
 95         // 摘要:
 96         //     使用指定的格式、區域性特定格式信息和樣式,將時間間隔的字符串表示形式轉換為其等效的 System.TimeSpan,並返回一個指示轉換是否成功的值。 字符串表示形式的格式必須與指定的格式完全匹配。
 97         //
 98         // 參數:
 99         //   input:
100         //     一個字符串,用於指定進行轉換的時間間隔。
101         //
102         //   format:
103         //     用於定義所需的 input 格式的標准或自定義格式字符串。
104         //
105         //   formatProvider:
106         //     一個對象,提供區域性特定的格式設置信息。
107         //
108         //   styles:
109         //     用於指示 input 的樣式的一個或多個枚舉值。
110         //
111         //   result:
112         //     此方法返回時,包含表示由 input 指定的時間間隔的對象;或者如果轉換失敗,則包含 System.TimeSpan.Zero。 此參數未經初始化即被傳遞。
113         //
114         // 返回結果:
115         //     如果 true 成功轉換,則為 input;否則為 false。
116         public static bool TryParseExact(string input, string format, IFormatProvider formatProvider, TimeSpanStyles styles, out TimeSpan result);
117     
118         public static bool TryParseExact(string input, string[] formats, IFormatProvider formatProvider, TimeSpanStyles styles, out TimeSpan result);
119      
120         public static bool TryParseExact(string input, string format, IFormatProvider formatProvider, out TimeSpan result);

 

時間為long型的毫秒轉換成TimeSpan

public TimeSpan(long ticks);// 以 100 毫微秒為單位表示的時間段。

public static TimeSpan FromMilliseconds(double value);//long占8字節轉double也是8字節。精度會丟失

自定義轉換方法

 1 private TimeSpan RevertMillsecToTimeSpane(long msec)
 2 {
 3    long day = 0;
 4    long hour = 0;
 5    long minute = 0;
 6    long second = 0;
 7    int millsec = 0;
 8    if(msec > 1000)
 9   {
10       second = msec / 1000;
11       millsec = (int)(msec % 1000);
12   }
13   if(second > 60)
14  {
15      minute = second / 60;
16      second = second % 60;
17   }
18   if(minute > 60)
19   {
20      hour = minute / 60; 
21      minute = minute % 60;
22    }
23   if(hour > 24)
24   {
25      day = hour / 24;
26       hour = hour % 24;
27    }
28     return new TimeSpan((int)day, (int)hour, (int)minute, (int)second, millsec);
29 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM