大家好,我是技术精英,我是C#的新秀。这是我第一次询问有关stackoverflow的问题,我是中国人,我的英语很差。
我试图通过使用.net中的SerialPort类,通过rs232使我的C#应用程序与数字秤进行通信。
我想插入一个点“。”在一个字符串中,我收到了字符串使用:(buf [3] .ToString(“X2”),字符串是00~99之间的数字,我想在数字中插入一个点。怎么办?
非常感谢您的帮助。
答案 0 :(得分:2)
您也可以使用Regex
string ss = buf[3].ToString("X2");
Regex.Replace("(\d)(\d)",ss,"$1.$2");
答案 1 :(得分:1)
如果要将字符串(在本例中为“。”)插入另一个字符串,可以使用String.Insert
方法:
"99".Insert(1, ".") // results in "9.9"
在你的情况下可能:
string result = buf[3].ToString("X2").Insert(1, ".");
如果您只想附加一个点,则可以使用+
运算符:
buf[3].ToString("X2") + ".";
答案 2 :(得分:1)
如果字符串中总是包含2个字符(例如:07/10/26),则可以通过Substring
函数获取第一个和第二个字符,并使用中间的点进行字符串连接。
string ss = buf[3].ToString("X2");
string result= ss.Substring(0, 1) + "." + ss.Substring(1, 1);
答案 3 :(得分:1)
String sringToInstert = buf[3].ToString("X2");
sringToInstert.Insert(0,".");
其中0是起始索引(您要放置点的位置)。
和“。”是你想要的。
为了开始索引0,结果将是= .99
对于开始索引1,结果将为= 9.9
答案 4 :(得分:-3)
string newStr = oldStr [0] +“。”+ oldStr [1];