- ベストアンサー
C#で文字列を数値に変換する方法
Visual Stdio .NET 2003を使っています。 C#で文字列(数字)を数値に変換したいのですが、 VBでいうVal関数のような物はありますか?例えば、 double a; a = Val("3.14"); とすると、aに3.14が入るような関数を使いたいです。 検索したのですが、見つかりませんでした。宜しくお願いします。
- thyristor
- お礼率66% (2/3)
- その他(プログラミング・開発)
- 回答数3
- ありがとう数6
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#2 の者です。。。 今回の場合は、System.Double.Parse() でしたね。。。 double.Parse() でも可能です。(上記と同じものです)
その他の回答 (2)
- JeanneNet
- ベストアンサー率48% (100/208)
こんにちは、じゃんぬねっと です。 .NET Framework に精通しましょう。 Int32.Parse() メソッドを使用します。 もちろん、数値なのかという確認は必要です。
- koma1000nin
- ベストアンサー率30% (342/1133)
これでできたと思うけどね。 ↓ double a; char *b="3.14"; … sscanf( b, "%f", &a); ┌┘ │ └──┐ ↓ ↓ ↓ 文字列 変換指定子 結果格納変数 ただし変数aには誤差付きで3.13999…が置数されますよ。 文字列,変換指定子,結果格納変数等については文法書をひもといてください。 わからなければ別に質問をたててください。
お礼
ご回答ありがとうございます。sscanfはライブラリに用意されてないみたいです。C/C++で作る時に使わせて頂きますね。
関連するQ&A
- カンマの含まれる文字列の数値変換方法について
VB.NETでプログラミングしています。 String型の文字列を Double型の数値に変換するときに 一般的にはVal関数を使いますが、 カンマが含まれる文字列"111,111"を 数値変換したい場合には単純にVal関数を 使用しただけではうまくいかないようです。 上の例で数値変換すると"111"になってしまうようです。 そこで質問なのですが、 何か簡単にできるうまい方法はないでしょうか? 関数があればご教示ください。 以下、Val関数の説明の抜粋です。 解説 文字列中に数字以外の文字が見つかると、Val 関数は読み込みを中止します。円記号 (\) やカンマ (,) など、通常は数値の一部と見なされる記号や文字も、Val 関数は数値として解釈しません。
- ベストアンサー
- Visual Basic
- 文字列が数値に変換されない
文字列の数字をVALUE関数で数値に変換したくても数値になりません。 ♯N/Aと表示されるだけです。 関数を入れたあとに表示形式を数値にしても変わりません。 元の文字列はVLOOKUP関数で検索した数字です。 これができないと仕事が進みません。急いでます。お願いします。
- ベストアンサー
- その他(Windows)
- 文字列→数値変換関数
・数字文字列を数値化する関数AtoS()を制作する。 書式:short AtoS(char *pStr, int *pRetCode); 引数:char *pStr; 文字列の先頭アドレス int *pRetCode; 動作の正否を返す 戻り値:pStrを数値化した値 処理: pStrで与えられた文字列をshort型に変換する。 呼び出し側の書式は以下の通りです。 void main(void) { short val; int code; val = AtoS("1234", & code); printf("%d\n",val); val = AtoS("-789", & code); printf("%d\n", val); } です。専門学校の明日の朝までの課題なのでどうか、どなたか助けて下さい。
- ベストアンサー
- C・C++・C#
- access2000 クエリで文字列を数値に変換
access2000 クエリで文字列を数値に変換 商品の管理DBをaccessで入力し、テーブルをexcelにエクスポートして並び替えやその他の編集をしています。 テーブルに「数量」というフィールドがあり、数字入力が主ですが、商品によっては「無制限」や「-」のように文字列を入力しなければならない為、「数量」は「数値型」ではなく「テキスト型」になっています。 excelへエクスポートした時に、「10」などは数値として認識させ、「無制限」などはそのままの文字列にしたいです。 クエリの式に「Val([数量])」としてみたところ、「10」は数値として変換されましたが、数値ではない文字列は全て「0」になりました。 また、「15,000」は「15」になりました。(カンマが文字列な為) これを 「10」→「10」(数値) 「無制限」→「無制限」(文字列) 「15,000」→「15000」(数値) にするような関数はありませんでしょうか。 excel2007のエラー処理(セルを選択した時に出る「!」で「数値に変換する」)と同じような挙動にしたいです。 宜しくお願いします。
- 締切済み
- その他MS Office製品
- 文字列を数字型に変換したい
いつもお世話になっております。 eclipseというツールでC言語のプログラムを触っているのですが、 文字列の数字を数値型に変換して掛け算をしたいのですが、 型変換の関数はありますでしょうか??
- ベストアンサー
- C・C++・C#
- 文字列を含むセルを数値に変換する方法
79062150007という数字の7906という部分だけ取り出すのに、midを使ってやってみたのですが、 =mid(文字列,1,4) とそのまま残るだけで、うまく変換しません。 文字列を数値に変換する方法を調べ、色々試してみたのですが、うまくいきません。 どうすれば良いのでしょうか?
- ベストアンサー
- オフィス系ソフト
- 文字列から数値を抽出したいのですが・・。
文字列から数値(integer型)を抽出したいのですが、うまくいきません。 val関数だと文字の途中の数値が判別できないし、困っています。 よろしくお願いします。 ※以下、文字列と数値の関係です。 ・"文字列" → 抽出したい数値 "0k,abc,5k,abc3.0" → 0530 "abc()_3t" → 3
- ベストアンサー
- Visual Basic
- 指定の文字列を指定の数値に変換する方法
エクセル2002で、指定の文字列を指定の数値に変換する方法を教えて下さい。 下記から、数字を文字列に変換する方法はみつけたのですが、逆ができません。。 [書式(O)]→[セル(E)...]→[セルの書式設定]→[表示形式]→[分類(C)]→[ユーザー定義]内。 [=1]"ABC";[=2]"赤青黄色";"未定" もちろん、関数でもかまわないのですが、適当なものが見つかりません。 例えば、こんな感じに変換。 ABC →1 赤青黄色 →2 大根にんじん →3 昼休み →4 放課後 →5 よろしくお願いします!
- ベストアンサー
- オフィス系ソフト
- 数値→文字列変換関数
・数値を文字列化する関数StoAを作成する。 書式:char *StoA(short nVal); 引数:short nVal; 文字列化する数値 戻り値:数字文字列のポインタ 処理:nValで与えられたshort型の数値を文字列に変換し、そのポインタを返す。 呼び出し側の書式は以下の通り。 void main(void) { char *pc; pc = StoA(123); printf("%s\n", pc); pc = StoA(-1234); printf("%s\n", pc); } です。自分で途中までしたので見てください。 #include <stdio.h> cahr *StoA(short nVal); void main(void) { char *pc; pc = StoA(123); printf("%s\n", pc); pc = StoA(-1234); printf("%s\n", pc); } char *StoA(short nVal) { ここからがわかりません。どなたか助けて下さい。
- ベストアンサー
- C・C++・C#
お礼
教えて頂いた方法で変換することができました。ありがとうございます。