C# 分隔连接的列

C# 分隔连接的列,c#,concatenation,string.format,C#,Concatenation,String.format,我有以下问题 我从sql存储过程接收到一些列。 在界面中以xls格式导出它们之后,我们将一些信息连接到sql表中。 在c#中,我们使用string.format方法连接一定数量的列: 例: 我希望能够在列之间插入管道或任何其他字符。 输出应该是这样的: column1|column2 imostring.Format(“{0}+{1}”,“column1”,“column2”)应输出column1+column2而不是column1column2 要在值之间插入管道,只需替换+ string.

我有以下问题

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

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

column1|column2
imo
string.Format(“{0}+{1}”,“column1”,“column2”)应输出
column1+column2
而不是
column1column2

要在值之间插入管道,只需替换
+

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

这就是
String.Join
的目的


我假设
column1
和'columns2'是变量,那么您需要的是:

string.Format("{0}|{1}", column1, column2);
例如,对于
23
25
的值,它将为您提供
23 | 25
的输出

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

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

 Console.WriteLine(result);
//输出

column1|column2
如果您使用的是C#6.0,那么也可以使用字符串插值

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

string.Format(“{0}+{1}”,“column1”,“column2”)无法为您提供
列1列2
。请避免猜测。是
column1
column2
变量还是字符串常量?这些列是来自存储过程中sql查询的变量。我们将这些列连接在一起,并将其发送到sql中的表中。此列中接收的格式为column1column2。请不要说我现在对c#完全是新手..string.join的问题是它只带来表的列名。而不是其中的信息。事实上,我不能隐式地将字符串转换为系统。datacolumn@Sorin您从未提到过使用
system.datacolumn
。如果要将datacolumns的实际值添加到输出中,可能需要查看如何迭代数据行。(假设您使用的是
system.dataset
system.datatable
),但我认为这超出了这个问题的范围。这一变化以及每一个其他变化都会导致sintax或操作数错误。
column1|column2
var result = $"{column1}|{column2}";