非常に大きな float 値である UITextEdit から文字列を取得し、それを long に変換して、計算で使用できるようにする必要があります。double を使用してみましたが、十分な大きさにならないため、文字列を long にすることを望んでいました。入力された値には、常に小数点以下 2 桁のみが含まれます。
どんな助けでも素晴らしいでしょう。
ありがとう
非常に大きな float 値である UITextEdit から文字列を取得し、それを long に変換して、計算で使用できるようにする必要があります。double を使用してみましたが、十分な大きさにならないため、文字列を long にすることを望んでいました。入力された値には、常に小数点以下 2 桁のみが含まれます。
どんな助けでも素晴らしいでしょう。
ありがとう
数値は小数点以下 2 桁までしか使用できないため、100 * 数値に等しい値を long に格納できます。数値に常に 2 つの小数がある場合 (両方が 0 の場合でも)、次のようにすることができます。
NSString *text = @"934968.34";
text = [text stringByReplacingOccurencesOfString:@"." withString:@""];
long long number = [text longLongValue];
小数が 1 つしかない場合 (このケースが検出された場合、最後に number = number * 10 があるはずです) または何もない場合 (この場合、number = number * 100) のコードを追加することもできます。
NSString メソッドlongLongValue
を使用して変換string
できますlong
NSString *text = @"Your long number string";
long longNum = (long) [ text longLongValue];
NSLog(@"num = %ld", num);
or
NSNumberFormatter * numFormatter = [[NSNumberFormatter alloc] init];
[numFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber *num = [numFormatter numberFromString:text];
NSLog(@"long Number: %llu", [num longLongValue]);