2012-09-04 53 views
0

我在我的應用程序中有一個StopWatch。時間顯示在格式爲:mm:ss.SSS的標籤上作爲NSString。我需要將其轉換爲NSNumber。我搜索了很多次Google,但找不到答案。NSString格式爲NSNumber

謝謝!

+0

你想讓NSNumber代表什麼?秒,毫秒,天? – Rengers

+0

http://stackoverflow.com/questions/12263832/how-to-update-the-textfield-value-in-ios/12264211#12264211 看看這個鏈接,也許有助於你 – Ben10

+0

我需要它作爲一個浮動價值,我可以等到它以後的另一個分數..例如:if(stopwatch.text <5.673)然後...等 – user1044303

回答

1

以下爲參考日期以秒爲單位的日期/時間。

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"mm:ss"]; 
NSDate *date = [formatter dateFromString:textField.text]; 
NSNumber *dateAsNumber = [NSNumber numberWithFloat:[date timeIntervalSince1970]]; 
0

試試下面的代碼:

NSNumberFormatter * f = [[NSNumberFormatter alloc] init]; 
[f setNumberStyle:NSNumberFormatterDecimalStyle]; 
NSNumber * myNumber = [f numberFromString:@"42"]; 
[f release]; 

但改變@ 「42」 與您label_name.text

0

這是你可以一個NSString轉換爲NSNumber的方式。

NSString *timeFormat = @"Your Time"; 
NSNumber *time = [NSNumber numberWithInt:[timeFormat integerValue]]; 
+0

它不是正確的方式 ,因爲我的字符串是這樣的:00:04.100例如.. – user1044303

+0

它是將NSString轉換成NSNumber的正確方法....要麼你要實現錯誤的邏輯或其他任何東西,然後我不知道,但它是正確的,我用它。 –