我不是一个 VB6 的人。我只需要为我们的项目将一些代码从 VB6 翻译成 C#。我在 VB6 上有这个代码
Comm_ReceiveData = Mid$(Comm_ReceiveData, 2, Len(Comm_ReceiveData))
此代码位于Timer1_Timer()
子函数内。
我将此行转换为 C#
Comm_ReceiveData = Comm_ReceiveData.Substring(1, Comm_ReceiveData.Length);
所以在 C# 中,我收到了这个错误。
Index and length must refer to a location within the string.
字符串 Comm_ReceiveData 是“01BP215009010137\r”。我相信长度是17
是的,我知道我会在 C# 中遇到这种错误。我想知道为什么我在 VB6 上没有出错。是否有另一种方法可以将该 VB6 代码转换为 C#?VB6 代码对“越界”错误不敏感吗?
顺便说一句,我正在使用该代码进行串行通信。我从我的 arduino 中得到一个字符串到 C#/VB6,我需要对其进行解码。非常感谢!