|
分類:[C#]
タイトルにある通り
C#.netで文字列から指定したバイト数分だけ文字を取得する方法なのですが
サンプルにあるソースを利用して
System.Text.Encoding hEncoding = System.Text.Encoding.GetEncoding("Shift_JIS");
string stTarget = "2468024680"
byte[] bBytes = hEncoding.GetBytes(stTarget);
return hEncoding.GetString(bBytes, 0, 20);
というふうにして文字列から20バイト分取得しているのですが
文字列が"a2468024680"というふうに20バイト目に全角文字がきた場合に
"a246802468 "というように最後に半角スペースが入ってしまいます。
文字列の中にスペースが含まれる場合があるのでTrimも使えません。
20バイト目が全角文字の場合は切り捨てになるようにうまいこと改造できないでしょうか?
|