2011-09-11 8 views
0

新しい患者IDを作成するために、患者データベースの文字列をintに変換する必要があります。新しい患者IDの文字列

病院データベースでは、患者IDは整数ではなくSTRINGです。それはp99という形式です。新しいIDを作成するには、pを取り出し、整数に変換して1を加え、値が10未満の場合は0を入れてから、pを追加する必要があります。

私はMicrosoft Visual StudioとC#を使用しています。 これについてどうすればいいですか?どんな助けでも大歓迎です!

答えて

0

int.Parse()MSDN)を使用すると、文字列を整数に変換できます。

3

string.SubstringメソッドとInt32.TryParseメソッドを使用できます。

String.Substringメソッド(Int32)を

このインスタンスから部分文字列を取得します。部分文字列は、指定された文字位置の で始まります。

Int32.TryParseメソッド(String、Int32)を

は、32ビットの数値の文字列表現が 整数同等に署名した変換します。戻り値は変換 が成功したかどうかを示します。

string patientId = "p99"; 
int id; 
if (Int32.TryParse(patientId.Substring(1), out id)) 
{ 
    patientId = string.Format("p{0}{1}", id < 10 ? "0" : string.Empty, id); 
    MessageBox.Show("Patient Id : " + patientId); 
} 
else 
{ 
    MessageBox.Show("Error while retrieving the patient id."); 
} 
+0

TryParseの場合+1 –

+0

また、Regex –

0

あなたはこれを行うには、単純なルーチンを書くことができます。

常に先行する 'p'があると仮定すると、最初の文字を削除するためにsID = sID.substring(1)を行うことができます。 次に、Int ID = Int16.Parse(sID)を使用してInt(この場合は16ビット)に変換できます。 32ビットが必要な場合は、Int32.Parseを使用します。

次に、ID ++またはID = ID + 1を1つずつ増やします。

次に、あなたが戻ってのsID = ID.ToString(の文字列に変換する必要があります)

最後に、長さをテストするために、いくつかの文字列操作を行う、長さ= 1場合有数「0」を追加し、 「p」を導く。