gpt4 book ai didi

c# - 将固定长度的字符串写到文件上吗?

转载 作者:太空宇宙 更新时间:2023-11-03 18:08:14 25 4
gpt4 key购买 nike

我的客户要求具有固定长度的文件记录,格式为页眉,正文和页脚,但在页脚中,他们希望有一个1966长的空白空间。我尝试对页眉,页脚和正文使用不同的按钮,但无法在末尾指定空格。这是我的代码..在创建页脚时空间不起作用。

    FileStream fs = new FileStream(@"C:\Users\IT-Administrator\Desktop\ee.txt", FileMode.Open, FileAccess.ReadWrite);
fs.Seek(0, SeekOrigin.End);


StreamWriter sw = new StreamWriter(fs);
sw.WriteLine(comboBox6.Text + textBox2.Text + textBox3.Text + textBox4.Text + **SPACE(1966)** );


sw.Close();
fs.Close();**strong text**

最佳答案

您可以通过使用接受格式说明符的WriteLine重载来实现。

如果您希望最后一个元素总共使用1966个字符,则可以编写:

using(var sw=new StreamWriter(@"C:\Users\IT-Administrator\Desktop\ee.txt"))
{
sw.WriteLine("{0}{1}{2}{3,-1966}",comboBox6.Text ,textBox2.Text,
textBox3.Text,textBox4.Text );
}


这样,更容易查看实际字符串的外观。例如,您可以看到您实际上是在一个连续的字符串中连接所有元素。也许,您想要做的是将它们用空格分开,例如: "{0} {1} {3} {4,-1966}"

如果要在最后一个元素后接1966个空格:

using(var sw=new StreamWriter(@"C:\Users\IT-Administrator\Desktop\ee.txt"))
{
sw.WriteLine("{0}{1}{3}{4}{5,-1966}",comboBox6.Text ,textBox2.Text,
textBox3.Text,textBox4.Text,' ');
}


在上面的代码中, using确保即使发生异常,StreamWriter也将关闭。该代码还通过使用path参数创建StreamWriter来避免同时创建StreamWriter和FileStream。

关于c# - 将固定长度的字符串写到文件上吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22096921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com