问题标签 [streamwriter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
12513 浏览

c# - 使用 File.Delete 删除文件,然后使用 Streamwriter 创建相同的文件?

我的方法会正确删除一个文件,然后以“realmlist.wtf”为名称创建一个文件,然后在其中写入一行吗?

我有点困惑,因为我看不到它实际上再次创建文件的行。还是创建 StreamWriter 的行为会自动创建文件?

0 投票
5 回答
3757 浏览

c# - StreamWriter 不写入现有文件

我正在尝试使用 StreamWriter 将一些文本写入文件并从 FolderDialog 选定的文件夹中获取文件的路径。如果文件不存在,我的代码可以正常工作。但是如果文件已经存在,它会抛出该文件正在被其他进程使用的异常。

现在,如果我这样写:

它适用于现有文件。

0 投票
3 回答
5602 浏览

.net - StreamWriter 不会刷新到 NetworkStream

使用 aStreamWriter写入 a NetworkStream,并使用 aStreamReader读取响应。该应用程序正在向新闻服务器发送命令和读取响应。

简化代码(无错误处理等):

最后一行的代码块,大概是在等待网络流发送响应。

我可以通过使用设置超时循环来避免挂起应用程序serverReader.Peek(),但我总是会超时;我从来没有得到回应。

如果我直接 telnet 到服务器和端口并输入命令,我会立即得到响应。

如果我serverWriter.Flush()明确调用,而不是使用该AutoFlush属性,我仍然会阻塞并且永远不会得到响应。

任何想法为什么我没有使用这种方法得到对服务器的响应?

谢谢!

解决:

上面的代码确实对我有用,所以我回去并在该代码的基础上构建了不起作用的代码。

在挂起的代码中,我仍在使用带有 serverReader.Peek() 的超时循环。Peek() 总是返回 -1,即使缓冲区中有数据要读取!!用对 ReadLine() 的阻塞调用替换 Peek() 循环可以解决我的问题。

我把超时循环放在最初是因为应用程序是多线程的,我不想阻塞。我将不得不重新审视这个问题,看看如何在不使用 Peek() 的情况下解决线程计时问题。

谢谢大家,很好的答案!

0 投票
3 回答
2389 浏览

c# - StreamWriter.Close() 产生空白文件后断电,为什么?

好的,所以解释一下;我正在开发一个可能在任何时间点出现电源故障的系统,我正在测试的一点是在我使用 StreamWriter 写出文件之后直接进行的。下面的代码:

shellConfigWriter将(a of strings)的内容写入List用作临时存储的文件,然后将其复制到原始文件上。现在,在此代码完成执行后,电源丢失,再次启动备份时,文件Game.cfg存在并且大小正确,但完全空白。起初我认为这是由于在硬盘驱动器上启用了写入缓存,但即使关闭它仍然会发生(尽管不太常见)。

任何想法都会非常受欢迎!

更新:好的,所以在删除.Close()语句并在每次写入操作后调用.Flush()后,文件仍然是空白的。我可以更进一步,在创建新文件之前先创建原始文件的备份,然后我有足够的备份来进行完整性检查,但我认为这无助于解决根本问题(当我告诉它写入时,刷新并关闭文件......它没有!)。

0 投票
1 回答
6382 浏览

asp.net - 为什么我的 StreamWriter Response 输出在 Excel 中产生垃圾重音,但在记事本中看起来很好?

我正在使用另一个 Stack Overflow 问题中的技术将 CSV 文件写入Response输出以供用户打开/保存。该文件在记事本中看起来不错,但是当我在 Excel 中打开它时,重音字符是垃圾。我认为这与字符编码有关,所以我尝试手动将其设置为 UTF-8(默认值StreamWriter)。这是代码:

关于我还需要做什么来正确编码文件以便 Excel 可以查看重音字符的任何想法?

0 投票
3 回答
1737 浏览

c# - 在 C# asp.net 中将文件写入当前用户的桌面

如果我有此代码,如果其他没有访问网络共享的用户尝试运行该方法,则会产生问题。如何使此方法将文件写入当前用户桌面?

0 投票
3 回答
11792 浏览

c# - c# HttpWebRequest POST 失败

所以我正在尝试将某些内容发布到网络服务器。

看起来不错,我正在根据 ENCODED 数据的大小设置内容长度......无论如何它在 sw.flush() 失败,“要写入流的字节超过指定的内容长度大小”

StreamWriter 是否在我背后做一些我不知道的魔术?有没有办法可以窥探 StreamWriter 正在做什么?

0 投票
3 回答
10237 浏览

vb.net - 如何使用文件流/流写入器处理并发文件访问?

我正在编写一个审计文件,该文件在每个用户使用我的应用程序时为每个用户编写用户名、时间和应用程序中几个变量的旧/更改值。它使用FileStreamandStreamWriter来访问审计文件。每个用户的所有审核都将写入同一个文件。

问题是当两个用户同时更新此审计文件时,每个变量的“旧值”在用户之间混合。为什么会这样,如何解决这里的并发问题?

一些代码,为了简洁而缩短......

这存在于 AuditLogger 类中,该类通过实例变量引用(每次访问函数时重新分配)。

0 投票
1 回答
2117 浏览

c# - Streamwriter:波兰字符被跳过?

我正在尝试制作一个小工具来帮助一些人在 SAP 安装和 Axapta 安装之间转换数据。

我得到一个西欧(Windows)编码(1252)的文本文件。他们添加了一些特殊字符来替换一些波兰语字符。现在我的工作是用正确的波兰语字符替换那些特殊字符。

如果我调试应用程序并在“objTemp2.​​WriteLine(strLineText);”上设置断点 线。然后我可以确定 strLineText 变量中的值是完美的。特殊字符被正确的波兰字符替换。

如果我之后打开写入的文件,则找不到正确的波兰语字符。我正在使用“ś”和“Ś”,两者都在文件中保存为“s”和“S”。

我错过了什么,还是忽略了一些非常重要的事情?

0 投票
6 回答
13162 浏览

c# - 使用 .NET 在文件中间添加一行

您好,我正在做某事,我需要能够将文本添加到 .txt 文件中。虽然我已经完成了这个,但我有一个小问题。我需要或多或少地将字符串写在文件中间。例子:

希望有人可以提供解决方案。

编辑好吧,谢谢大家,我会尝试弄清楚,可能只是重写整个文件。好吧,我正在制作的程序与主机文件有关,并不是每个人都有相同的主机文件,所以我想知道是否有办法读取他们的主机文件,并复制所有文件,同时将字符串添加到它?