我花了最近2个小时的谷歌搜索,要么我忘了关键字,要么我是唯一一个有这个问题的人。
我需要一个制表符分隔文件
StringBuilder sb = new StringBuilder();
foreach (Transaction line in lines)
{
sb.AppendFormat("{0}\t{1}\t{2}\t{3}\t{4}\r\n",
line.portfolio_id, line.cp_client_id, line.instrument_id, line.sign_id, line.currency_id);
}
using (StreamWriter w = new StreamWriter(filefullpath,true))
{
w.Write(sb.ToString());
w.Flush();
w.Close();
}
以上代码,产量
PROD.3264-PAYMENTS;CUST.406;CASH-PAYMENT-DI;Pay;USD;
我不确定分号来自哪里。
请有人可以从中获得一些亮点......
感谢您的帮助
答案 0 :(得分:2)
我引用的其中一个库中有一个扩展名(并且clearl错位)。有人必须编写以避免发送制表符分隔文件。事实上我的代码中的行,stringbuilder内容都很好,直到调用ToString()方法,这意味着几乎不可能调试它。
public static string ToString(this StringBuilder sb)
{
return sb.ToString().Replace("\t", ";");
}
我开始对文档有新的尊重
所以请注意扩展(我附加到扩展程序,但是当你遇到这样的问题时,它会让它变得有点困难 - 只有一个小时)