Delimit连接列

时间:2016-03-17 08:26:25

标签: c# concatenation string.format

我有以下问题。

我从sql存储过程中收到了一些列。 在接口中以xls格式导出它们之后,我们会在连接后将一些信息记录到sql表中。 在c#中,我们使用string.format方法连接了一定数量的列: 例如:

string.Format("{0}+{1}", "column1", "column2");

output: column1column2

我希望能够在列之间插入管道或任何其他字符。 输出应该是这样的:

column1|column2

5 个答案:

答案 0 :(得分:5)

这是String.Join的用途。

String.Join documentation on MSDN

string[] columns = {"column1", "column2"};
string output = String.Join("|", columns);
//output now contains : "column1|column2"

答案 1 :(得分:2)

imo string.Format("{0}+{1}", "column1", "column2");应该输出column1+column2而不是column1column2

在您需要替换+

的值之间插入管道
string.Format("{0}|{1}", "column1", "column2"); 

答案 2 :(得分:1)

我认为column1和' columns2`是变量,你需要的是:

string.Format("{0}|{1}", column1, column2);
例如,对于2325的值,

将为您提供23|25的输出。

答案 3 :(得分:0)

 var column1 = "column1";
 var column2 = "column2";
 var delimiter = "|";

 var result = string.Format("{0}{1}{2}", column1, delimiter, column2);

 Console.WriteLine(result);

//输出

column1|column2

答案 4 :(得分:0)

如果您使用的是C#6.0,也可以使用字符串插值

var result = $"{column1}|{column2}";