将 VB left() 函数转换为 C#

本文关键字:转换 函数 VB left | 更新日期: 2023-09-27 18:21:06

我有一些vb代码,如果有人能够为我将其转换为c#,我会发现它会很有帮助。我真的不知道左边的函数是做什么的?

If Left(cboLeng, 1) = "1" And Left(cboLeng, 1) = "2" And Left(cboLeng, 1) = "3" And Left(cboLeng, 1) = "4" And Left(cboLeng, 1) = "5" And Left(cboLeng, 1) = "6" And Left(cboLeng, 1) = "7" And Left(cboLeng, 1) = "8" And Left(cboLeng, 1) = "9" Then
        Leng = "L" & cboLeng.Text
    Else
        Leng = cboLeng.Text
    End If

将 VB left() 函数转换为 C#

(顺便说一下,不清楚这里的cboLeng是什么 - 它看起来像是用作字符串包含Text属性的类型。更多信息会有所帮助。此答案的其余部分假设它是一个字符串 - 否则,只需使用 Text 属性一次来获取字符串值,并对其进行操作。

Left函数采用初始子字符串 - 但该代码没有意义。这有点等同于:

if (cboLeng.StartsWith("1") && cboLen.StartsWith("2") && ...)
{
}

字符串不能以"1"开头,以"2"开头。我的猜测是它真的想像这样:

// TODO: Check for an empty string
char firstChar = cboLeng[0];
if (firstChar >= '1' && firstChar <= '9')
{
    Leng = "L" + cboLeng;
}
else
{
    Leng = cboLeng;
}

Left采用所提供字符串的最左侧字符。C# 中的等效功能由字符串提供。子。所以你的代码将开始:

if (cboLeng.Text.Substring(0, 1) == "1"...