VB2005のプログラミングについて教えてください。

①でiをCstringで宣言しています。
②はソースの一部抜粋です。listviewに追加しています。このときi(0)はCstringですが、数値に変換して代入する方法はありますでしょうか?

valで行ったら実行時エラーとなりました。


①Dim i(10) as Cstring

② .Items.Add(i(0))

よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2008/03/24 22:32:59
  • 終了:2008/03/25 00:07:29

回答(1件)

id:tarutatta No.1

tarutatta回答回数20ベストアンサー獲得回数02008/03/24 23:21:39

ポイント60pt

Cstring という型は知りませんが、 String 型ならば Int32.Parse メソッドで整数型に変換することができます。

参考: http://msdn2.microsoft.com/ja-jp/library/system.int32.parse(VS.80).aspx

id:mai_mai_mail

回答ありがとうございます。Cstringとは書き間違いです。ただしくはStringです。試してみましたがうまくいきませんでした。つぎのコードを書いて実行すると次のえらーがでます。

「入力文字列の形式がただしくありません」

どうしてだかお分かりの場合はおしえてください。よろしくお願いします。

Dim xxx As String

Dim yyy As Integer

xxx = "aaaaaa"

yyy = Integer.Parse(xxx)

2008/03/24 23:54:19
  • id:tarutatta
    どんなデータを数値型に変えることで、最終的に何がしたいのかがよくわからないので答えづらいのですが、 "aaaaaa" という文字列は 10 進数として数値に変換できませんので FormatException (入力文字列の形式が正しくありません)がスローされます。

    以下、考えられることを列挙してみます。

    ・事前に変換できる文字列かを調べるには TryParse メソッドを用います。
    ・小数などを扱いたい場合には Float や Double 、Decimal などの Parse を用います。
    ・10 進数以外で表記された文字列を変換したいときは第 2 引数に NumberStyles を指定します。
     (http://msdn2.microsoft.com/ja-jp/library/system.globalization.numberstyles(VS.80).aspx)

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません