2012-05-16 19 views
2

我讀在這個格式噸值的文本文件:1.36E-08目標C - 科學記數法「串」到雙

是否有「解析」(我認爲是這個詞的方式我需要)這個價值成雙?如果我給它分配直截了當它給了我0.1

//this NSLogs out "0.00000" 
double x = 1.36E-08; 
+0

您是否嘗試過'的NSString *串=「1.36e-08」; NSLog(「%f」,[string floatValue])'? – Daniel

+0

你的意思是把一串「1.36E-08」變成雙重?或者在科學記數法中顯示雙精度? –

+0

編輯:丹尼爾有正確的答案!我的問題是這樣的:NSLog在@小數點後六位切斷你的電源。 E-08太小。如果我嘗試「E08」它完美的作品! :D *如果您不介意,請將其作爲答案提交,並將其作爲答案標記出來,以便其他人可以看到它的工作原理 – MrHappyAsthma

回答

5

我想你想要這樣的:

NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:@"1.36e-08"]; 

NSLog(@"Number -> %g", [decNumber doubleValue]); 

輸出:

Number -> 1.36e-08

+0

這也完成了我所需要的。謝謝:) *剛剛測試過。 :D – MrHappyAsthma

+0

不客氣。很高興幫助:) –