我正在尝试使用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);
答案 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(' ',',');
}