使用拆分字符串中的值填充类变量

时间:2016-02-23 11:01:09

标签: c# string

所以我有这段代码:

public class myClass
{

    public string A { get; set; }
    public string B{ get; set; }
    //and so on
}

我想添加一个构造函数,它接受一个字符串输入并让该构造函数将字符串拆分为','然后使用拆分值来填充类变量

我尝试过什么

我试图用我的变量值创建一个字符串,如下所示:

public void myVoid()
    {


        string s = "A,B,..etc";
        string[] values = s.Split(',');

        foreach (string item in values)
        {
            Console.WriteLine(item);
            Console.ReadKey();
        }
    }

这会在每次按键时逐个返回我的值,但这只是让我了解它。

所以要澄清一下:我想添加一个构造函数,它接受一个字符串输入并让该构造函数将字符串拆分为','然后使用拆分值来填充类变量

4 个答案:

答案 0 :(得分:0)

一个简单的方法是:

    public class myClass
    {
       public string A { get; set; }
       public string B{ get; set; }
       public myClass()
       {
         //default constructor
       }
       public myClass(string S)
       {
         string[] values = S.Split(',');
         if (values.Length>=2)
         {
            this.A=values[0];
            this.B=values[1];
         }
       }
     }

但是你的目标有点模糊。例如,分裂字符串的哪个值将附加在A上,哪个附加在B?

答案 1 :(得分:0)

这是你想要的吗?

public class myClass
{
    public myClass(string input)
    {
         var ar = input.Split(',');
         if (ar.Length >= 2)
         {
             A = ar[0];
             B = ar[1];
         }
    }

    public string A { get; set; }
    public string B{ get; set; }
    //and so on
}

使用:

var myclass = new myClass("some,thing");

答案 2 :(得分:0)

你想要这个 -

public class myClass
{
    private string _a, _b;

    public myClass(string args)
    {
        _a = args.Split(',')[0];
        _b = args.Split(',')[1];
    }

    public string A { get { return _a; } set { _a = value; } }
    public string B { get { return _b; } set { _b = value; } }
    //and so on
}

enter image description here

答案 3 :(得分:0)

 public string A { get; set; }
    public string B { get; set; }

    public Sample(string strSplit) {
        var values = strSplit.Split(',');
        A = values[0];
        B = values[1];
    }
Sample dd = new Sample("James,Jonathan");

更好地使用反射