Tag: streamwriter

Streamwriter有时会在一条线的中间切断我的最后几行?

这是我的代码。 : FileStream fileStreamRead = new FileStream(pathAndFileName, FileMode.OpenOrCreate, FileAccess.Read, FileShare.None); FileStream fileStreamWrite = new FileStream(reProcessedFile, FileMode.OpenOrCreate, FileAccess.Write, FileShare.None); StreamWriter sw = new StreamWriter(fileStreamWrite); int readIndex = 0; using (StreamReader sr = new StreamReader(fileStreamRead)) { while (!sr.EndOfStream) { Console.WriteLine(“eof” + sr.EndOfStream); readIndex++; Console.WriteLine(readIndex); string currentRecord = “”; currentRecord = sr.ReadLine(); if (currentRecord.Trim() != “”) { Console.WriteLine(“Writing […]

在C#中的服务器上使用StreamWriter

我尝试使用以下代码写入远程计算机: StreamWriter(@”\\” + remoteMachine + “\\admin$\\” + fileName); 我收到以下错误登录失败:未知的用户名或密码错误。 我得到了用户名,域名和密码。 我怎么用凭证写? 如果我在这个会话中已经去过那台电脑没有问题,但是如果它是一个新会话,那么计算机就无法识别该位置 我怎么用凭证写?

c#HttpWebRequest POST’ing失败

所以我想尝试将内容发布到网络服务器上。 System.Net.HttpWebRequest EventReq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(“url”); System.String Content = “id=” + Id; EventReq.ContentLength = System.Text.Encoding.UTF8.GetByteCount(Content); EventReq.Method = “POST”; EventReq.ContentType = “application/x-www-form-urlencoded”; System.IO.StreamWriter sw = new System.IO.StreamWriter(EventReq.GetRequestStream(), System.Text.Encoding.UTF8); sw.Write(Content); sw.Flush(); sw.Close(); 看起来没问题,我根据ENCODED数据的大小设置内容长度…无论如何,它在sw.flush()失败,“要写入流的字节数超过指定的内容长度大小” StreamWriter在我背后做了一些魔法,我不知道吗? 有没有办法让我了解StreamWriter正在做什么?

在文本文件中的特定位置添加新行。

我想在文件中添加特定的文本行。 具体在两个边界之间。 如果我想在item1的边界之间添加一行,它会是什么样子的一个例子: [item1] 2550 coins 995 200000 7 2550 coins 995 200000 7 2550 coins 995 200000 7 2550 coins 995 200000 7 2550 coins 995 200000 7 //Add a line here in between the specific boundaries [/item1] [item2] 2550 coins 995 200000 7 2550 coins 995 200000 7 2550 coins 995 200000 8 […]

如何制作“只读”文件?

我正在使用C# StreamWritier类。 问题: 如何将文件设置为只读,以便没有人可以删除或写入文件? 如何制作隐藏文件? 我正在创建这样的文件: private void button1_Click(object sender, EventArgs e) { SaveFileDialog save = new SaveFileDialog(); save.FileName = textBox1.Text; save.Filter = “Text File | *.rtf”; if (save.ShowDialog() == DialogResult.OK) { StreamWriter writer = new StreamWriter(save.OpenFile()); writer.WriteLine(textBox2.Text); } writer.Dispose(); writer.Close(); }

C#unit testingStreamWriter参数

我有一堆所有实现接口的类,其中一个参数是StreamWriter。 我需要检查StreamWriter的内容。 我试图找到一种方法来避免在测试服务器上编写文本文件并打开它们来检查内容。 有没有办法快速将StreamWriter内容/流转换为StringBuilder变量?

尝试/最后阻止vs调用dispose?

这两个代码示例之间是否有任何区别,如果没有,为什么using存在? StreamWriter writer; try { writer = new StreamWriter(…) writer.blahblah(); } finally { writer.Dispose(); } VS: using (Streamwriter writer = new Streamwriter(…)) { writer.blahblah } 我的意思是在第二个例子中你真的应该把它放在try块中,所以添加finally块确实不会花费太多精力。 我知道整个事情可能包含在一个更大的尝试块中但是,对我来说似乎是多余的。

如何覆盖txt文件中的数据?

可能重复: 任何人都可以告诉为什么在使用StreamWriter保存数据时仍然显示以前的数据 我有WPF C#应用程序,读取和写入.txt文件,我知道如何写行但行,但我如何覆盖已经是文件的文本。 这就是我要写入文本文件的下一行的内容,但是我希望不仅仅是写入下一行,谢谢。 using (StreamWriter newTask = new StreamWriter(“test.txt”, true)) { newTask.WriteLine(name[i].ToString()); }

文本文件中C#中的StreamWriter限制

我有一个包含100行的数组列表。 当我尝试将其导出到文本文件(txt)时,输出只有84行,它停在第84行的中间。 当我查看文件大小时,它显示了非常清晰的4.00KB,好像对流编写器有某种限制。 我尝试使用不同的参数等,但它一直在发生。 这是代码: FileStream fs = new FileStream(path, FileMode.Create); StreamWriter sw = new StreamWriter(fs); ArrayList chartList = GetChart(maintNode); foreach (var line in chartList) { sw.WriteLine(line); } fs.Close(); Console.WriteLine(“Done”); 谢谢您的帮助!

什么消耗更少的资源,并且更快地存储在StringBuilder中的File.AppendText或File.WriteAllText?

我必须将数千条动态生成的行写入文本文件。 我有两个选择,哪个消耗更少的资源并且比另一个更快? A.使用StringBuilder和File.WriteAllText StringBuilder sb = new StringBuilder(); foreach(Data dataItem in Datas) { sb.AppendLine( String.Format( “{0}, {1}-{2}”, dataItem.Property1, dataItem.Property2, dataItem.Property3)); } File.WriteAllText(“C:\\example.txt”, sb.ToString(), new UTF8Encoding(false)); B.使用File.AppendText using(StreamWriter sw = File.AppendText(“C:\\example.txt”)) { foreach (Data dataItem in Datas) { sw.WriteLine( String.Format( “{0}, {1}-{2}”, dataItem.Property1, dataItem.Property2, dataItem.Property3)); } }