私はこの状況にあります:IOS:テキストフィールドとダブル値
私はテキストフィールドにユーロで値を書き込む必要があります。 このテキストフィールドの中に "10"を書き込む場合、二重の値 "10.00"で保存するか、 "10,1"を書き込む場合は二重の "10,10"に保存するか、 "10,23"私は "10,23"を保存する必要があります
どうすればいいですか?
私はこの状況にあります:IOS:テキストフィールドとダブル値
私はテキストフィールドにユーロで値を書き込む必要があります。 このテキストフィールドの中に "10"を書き込む場合、二重の値 "10.00"で保存するか、 "10,1"を書き込む場合は二重の "10,10"に保存するか、 "10,23"私は "10,23"を保存する必要があります
どうすればいいですか?
これは役立つはずです。(。。E Gユーザー入力)
あなたがローカライズされた数字をサポートしたい場合はdouble val = [[textField text] doubleValue];
、-[NSNumberFormatter numberFromString:]
が移動するための方法です。これはNSNumber
を返すので、あなたは-[NSNumber doubleValue]
を使用して二重の値を取得することができます
NSNumber *number = [numberFormatter numberFromString:inputString];
double doubleValue = [number doubleValue];
これは、これを行うための方法であり、マークされた答えではありません! (1up) –
あなたはdouble値に変換文字列のような型キャストを使用することができます。
いいえ、型キャスティングは機能しません。「double」でも「NSNumber」でもキャストできません。 – gcbrueckmann
「10.23」または「10,23」のテキストフィールド内に同じものがある場合、違いは何ですか? – CrazyDev
くそ、私はそのコンマに気付かない。 **あなたが文字列の中の**カンマ**のオカレンスを**ドット**に取り除く異なる構造を使うかもしれません(このフィールドが数字入力のためだけに使用されていればOKです)。 'double [= [[textField text] stringByReplacingOccurrencesOfString: @ "、" withString:@ "。"] doubleValue]; ' –
okありがとうございます – CrazyDev