尝试使用c#在两个系统之间转换/传递数据

时间:2017-05-08 18:57:39

标签: c#

我正在尝试使用C#在两个系统之间传递数据。每个系统都能够将数据读/写为单个字符串,但格式不匹配。

我正在尝试将此作为基础:

string convert(string inputString, int columnCount)

inputString应该是以逗号分隔的值字符串,而columnCount应该是要组合在一起的列数。

convert("one, two, three, four, five, six",3) 

能够返回

"[[one, two, three],[four, five, six]]"

我尝试创建一个测试应用程序,试图让它工作,创建两个文本框,一个用于inputString,另一个用于columnCount。带有标签输出和按钮来测试它。但我似乎无法让它发挥作用。

string inputString = txtNumbers.Text;
int columnCount = Convert.ToInt32(txtColumn.Text);
string lblOutput = string convert(string inputString, int columnCount);

1 个答案:

答案 0 :(得分:1)

这段代码可能会给你一个提示;

    static void Main(string[] args)
    {
        Console.WriteLine(Convert("one,two,three,four,five,six,seven", 3)); 
    }

    public static string Convert(string inputString, int columnCount)
    {
        var resultBuilder = new StringBuilder();
        var entries = inputString.Split(',');
        var currentCol = 0;

        inputString = inputString.Replace(", ", ",");

        while (currentCol * columnCount < entries.Length)
        {
            var columnEntries = entries.Skip(currentCol * columnCount).Take(columnCount);
            var columnEntriesString = string.Join(", ", columnEntries);
            resultBuilder.Append($"[{columnEntriesString}],");
            currentCol++;
        }
        return resultBuilder.ToString().TrimEnd(' ',',');
    }