iphone時間戳與時間之間的相互轉換,隨機數的使用(轉)

設置時間顯示格式:

       NSString* timeStr = @"2011-01-26 17:40:50";
       NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
       [formatter setDateStyle:NSDateFormatterMediumSty le];
       [formatter setTimeStyle:NSDateFormatterShortStyl e];     
       [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; //  ----------設置你想要的格式,hh與HH的區別:分別表示12小時制,24小時制
     
    //設置時區,這個對於時間的處理有時很重要
    //例如你在國內發佈信息,用戶在國外的另外一個時區,你想讓用戶看到正確的發佈時間就得注意時區設置,時間的換算.
    //例如你發佈的時間爲2010-01-26 17:40:50,那麼在英國愛爾蘭那邊用戶看到的時間應該是多少呢?
    //他們與咱們有7個小時的時差,因此他們那還沒到這個時間呢...那就是把將來的事作了
     
       NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];
       [formatter setTimeZone:timeZone];
     
       NSDate* date = [formatter dateFromString:timeStr];  //------------將字符串按formatter轉成nsdate
                   
       NSDate *datenow = [NSDate date];//如今時間,你能夠輸出來看下是什麼格式
     
       NSString *nowtimeStr = [formatter stringFromDate:datenow]; //----------將nsdate按formatter格式轉成nsstring

時間轉時間戳的方法:
       NSString *timeSp = [NSString stringWithFormat:@"%d", (long)[datenow timeIntervalSince1970]];
       NSLog(@"timeSp:%@",timeSp); //時間戳的值
 時間戳轉時間的方法
       NSDate *confromTimesp = [NSDate dateWithTimeIntervalSinc e1970:1296035591];
       NSLog(@"1296035591   = %@",confromTimesp);         
       NSString *confromTimespStr = [formatter stringFromDate:confromTimesp];
       NSLog(@"confromTimespStr =   %@",confromTimespStr);
     
下面來講隨機數 :
rand() 可得到僞隨機數。可是僅僅這樣寫的話,同一段代碼每次運行程序得到的隨機數相同。
由於在調用rand()前自動調用了srand(1); 這條語句。 只有當srand()的形參是變化的時每次運行得到的隨機數纔不一樣。
用什麼樣的隨時變化的參數呢? 用time(NULL),   即srand((unsigned)time(NULL)); rand(); 這樣每次運行獲得的隨機數不一樣。
如何得到某個區間的隨機數?
            ---- 若是是區間[0,n),     rand()%n 就能夠了
            ---- 若是是區間[m,n),   rand()%n+m 就能夠了
         ----若是是區[0,1), rand()/double(RAND_MAX) 就能夠能夠了。(RAND_MAX在cstdlib裏有定義)
這裏有更詳細的介紹:
http://blog.csdn.net/zhoubl668/archive/2009/01/04/3704604.aspx

使用的例子:
       int a =arc4random() + 16; //從16到20的隨機數
       int b = random()0; // 從0到100的隨機數
       NSLog(@"arc4random:     %d",a);
       NSLog(@"random:     %d",b);
       srandom(time(NULL)); //將隨機數種子重置,
相關文章
相關標籤/搜索