【问题标题】:StreamWriter.Write is not writing all the data [closed]StreamWriter.Write 没有写入所有数据[关闭]
【发布时间】:2020-12-30 17:08:16
【问题描述】:

我正在尝试通过循环数据创建一个文本文件。每个循环数据我已发送到另一个方法并创建文本文件作为打击。

//another method each and every for loop time this method will run.
public void  TextFileGen1(string pdate, string oPno, string supCode, string supName, string cur, string docTotal, string glAct, string glName, string pType, string jRemark, string rmk)
{
    if (pType == "CEFT")
    {
        using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"E:\filename.txt", true))
        {
            file.Write(pdate, oPno, supCode);
        }
    }
    else
    {
        using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"E:\DFCC\filename.txt", true))
        {
            file.Write(pdate, oPno, supCode);
        }
    }
}

当前输出是这样的:

20201228 20201229

但我期待这个输出:

20201229,hgfd,gfd
20201228,yhgtfr,hygtfr

谁能告诉我怎么做。

【问题讨论】:

  • 代码很不清楚。除了缺少的逗号之外,输出中有什么,输出中没有什么?
  • 基本上,您对StreamWriter.Write 的调用并没有达到您的预期。在您使用的重载中,第一个参数应为格式字符串,其他参数应为该格式字符串的参数。

标签: c# textwriter


【解决方案1】:

您似乎没有正确使用写入功能。

我想你想要的电话是:

file.Write("{0},{1},{2}", pdate, oPno, supCode);

第一个参数是“格式字符串”,后面是参数。

https://docs.microsoft.com/en-us/dotnet/api/system.io.streamwriter.write?view=net-5.0

【讨论】:

    【解决方案2】:

    变化:

    file.Write(pdate, oPno, supCode);
    

    到:

    file.WriteLine(pdate + "," + oPno + "," + supCode);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-08
      • 1970-01-01
      • 1970-01-01
      • 2021-12-04
      • 2013-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多