我已导出为CSV脚本。
我导出struct的列表。我在StringWriter的帮助下写作。在struct field array foreach循环中,我迭代遍历所有属性,并在每个属性之后放置&#39 ;;'。在第一行我写了WriteLine()。
所以作为输出我有:
value1;value2;value3;
我想要:
value1;value2;value3
问题是:如何从我得到的东西中得到我想要的东西,或者基于我已经做过的东西。
我现在有3个想法:
答案 0 :(得分:6)
使用String.Join为输出形成每一行。它可以防止你必须检查哪个术语是最后一个。
http://msdn.microsoft.com/en-us/library/57a79xd0.aspx
var values = { "value1", "value2", "value3" };
string line = string.Join(";", values);
行将是
"value1;value2;value3"
答案 1 :(得分:3)
试试这段代码,
str.TrimEnd(';');
答案 2 :(得分:1)
通常我只是在行形成后删除最后一个字符。
答案 3 :(得分:1)
我使用StringBuilder
并执行:
var builder = new StringBuilder();
// ...
// add the text
// ...
builder.Length--;
这样我就可以避免使用字符串了。