1

こんにちは、すべての技術エリートです。私は C# の新人です。スタックオーバーフローで質問するのはこれが初めてです。私は中国人で、英語が下手です。

.net の SerialPort クラスを使用して、C# アプリケーションを rs232 経由でデジタル スケールと通信させようとしています。

ドット「.」を挿入したい 文字列で、文字列 use:(buf[3].ToString("X2") を受け取りました。文字列は 00 ~ 99 の数字です。数字にドットを挿入したいのですが、どうすればよいですか ?

助けてくれてありがとう。

4

5 に答える 5

2

文字列(この場合は「。」)を別の文字列に挿入する場合は、次のString.Insertメソッドを使用できます。

"99".Insert(1, ".") // results in "9.9"

あなたの場合、おそらく:

string result = buf[3].ToString("X2").Insert(1, ".");

ドットを追加するだけの場合は、+演算子を使用できます。

buf[3].ToString("X2") + "."; 
于 2012-08-27T12:19:06.147 に答える
2

使用することもできますRegex

string ss = buf[3].ToString("X2");
Regex.Replace("(\d)(\d)",ss,"$1.$2");
于 2012-08-27T12:26:34.000 に答える
1

文字列に常に 2 文字が含まれる場合 (例 :07 / 10 /26)、Substring関数によって最初と 2 番目の文字を取得し、間にドットを入れて文字列連結を行うことができます。

string ss = buf[3].ToString("X2");  
string result= ss.Substring(0, 1) + "." + ss.Substring(1, 1);
于 2012-08-27T12:19:43.200 に答える
1
String sringToInstert = buf[3].ToString("X2");
sringToInstert.Insert(0,".");

0 は開始インデックス (ドットを配置する場所) です。

と "。" 入れたいものです。

開始インデックス 0 の場合、結果は次のようになります =.99

インデックス 1 を開始する場合、結果は次のようになります =9.9

于 2012-08-27T12:19:49.827 に答える
-3

string newStr = oldStr[0]+"."+oldStr[1];

于 2012-08-27T12:21:29.230 に答える