问题标签 [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.
c# - C# 类库:StreamWriter 写入 system32 文件夹
我有一个部署在 ISP 服务器上的类库,供 ASP.NET Web 服务使用。我想跟踪任何错误,在这种情况下,我无法访问 Windows 事件日志。所以我想我会使用 StreamWriter 类写入一个 txt 文件。问题是如果我没有给出绝对路径而只是一个文件名,它会尝试写入 C:\Windows\System32,这对我没有好处。我如何告诉它使用数据目录或应用程序根目录?有什么想法吗?
streamwriter - 从文件中读取数据损坏
我正在从 TXT 文件中读取数据,需要我替换一些现有数据,然后将其写回文件。问题是,当我将文本写回文件时,文件中的特殊字符会损坏。
例如,我在文件“foo.txt”中有一个字符串,它具有以下“€rdrf +À [HIGH]”。我的应用程序将文本读入字符串,遍历该行并将 [HIGH] 替换为一个值,然后写回文件。问题是,特殊文本字符已损坏。
这是代码库的缩写版本:
如何在不损坏特殊文本字符的情况下从文件中读取?
谢谢杰
c# - 表单退出时关闭 Stream Read 和 Stream Writer
大家好,这里有点麻烦。
所以我有一个加载文件的加载按钮和一个保存文件的保存按钮。我还有一个关闭程序的退出按钮。我需要帮助的是当我关闭程序时,我不会检查是否有任何未关闭的 StreamReader 或 StreamWriter 东西。
这是我目前所拥有的:在顶部,我清除了这些人
我的加载按钮看起来像这样
我的保存按钮看起来像这样
我的退出按钮看起来像这样
我试图做的是在顶部设置 bool isDirtyBoolean,然后当 Stream Reader 或 Writer 关闭时,将 bool 值设置为 true,所以当我退出应用程序时,如果它仍然设置为 false,它无论如何都会关闭它们。
但这不起作用,因为 isDirtyBoolean 值是那些私有的 void 按钮,我无法访问它们。
c# - c#我可以用streamwriter创建一个动态文件名吗?
我试图让程序写入一个以时间戳命名的文件。基本上,将时间戳保存为字符串值,我希望它根据该时间戳创建文件。例如“飞行清单 10/14/2010 1:38:29 AM.txt”
这样做的正确方法是什么?
我试过这样的事情:
vb.net - 独占访问文本文件,读取和覆盖它
我想打开一个文本文件,并且不允许任何其他进程写入它。我知道我可以使用以下 FileStream 做到这一点:
一旦我有这样的访问权限,我需要读取所有行(我将使用 StreamReader(fs)),然后我需要写入文件(我将使用 StreamWriter(fs))。
这里的问题是,当我使用文件流作为参数而不是文件路径时,StreamWriter 不允许我将附加模式设置为 false(这样我就可以覆盖文件中的所有文本)。因此,使用 StreamWriter 编写的所有文本都附加到我不想要的文本上。如果我使用带有文件路径的 StreamWriter(这将使我将 append 设置为 false)作为参数而不是文件流,它将因为 FileStream FileShare 而被锁定。我怎样才能仍然拥有读取和写入文件的独占访问权限,但仍然能够覆盖现有文本(附加模式为 false)?
sockets - 从服务器读取文件的内容,然后通过套接字 C# 将其发送到客户端
我在这里尝试通过服务器发送文本文件的内容并将其发送给客户端
这是服务器
它从服务器读取的客户端部分是这个
当我运行代码时,完全没有错误,但是客户端卡住了,当我停止服务器时,文件的内容将显示,,,顺便说一句,它是一个 GUI 应用程序
c# - 流作家的基本理解
你好,
我的问题与对使用 StreamWriter 写入数据的基本理解有关。如果您考虑以下代码:
当写入器对象被初始化时,使用文件名,它所拥有的只是一个指向文件的指针。
但是,当我们将任何字符串写入 writer 对象时,它实际上是否会加载整个文件、读取其内容、将字符串附加到末尾然后关闭句柄?
我希望这不是一个愚蠢的问题。我问这个是因为,我遇到了一个应用程序,它可能每半秒频繁地写入一个文件,并且文件大小增加到大约 1 GB,并且它仍然继续写入文件。(记录)
您认为这会导致 100% 的 CPU 使用率吗?
如果我的问题不清楚,请告诉我?
提前致谢。
.net - VB.NET StreamWriter 表达式预期
过去一个小时左右我一直在看这个。谁能告诉我这有什么问题?
这是编译器错误BC30201: Expression expected.
导致它的行是Dim sw
行。
谢谢你的帮助。
纳鲁姆
c# - 在不使用 using 的情况下关闭文件
我有一个类,它从一个文件流中读取数据并写入另一个文件流。我担心在 closeFiles() 中处理完成后关闭流。
您将如何处理一个流的 dispose 可能引发异常以阻止另一个流的 dispose 被调用的可能性。
我应该调用 close 并处理流还是只处理一个?
如果我从流处理中捕获任何错误,然后继续移动和删除文件,如 lastOperation() 所示,会发生什么?
在一个完美的世界中,我想在 c++ 样式初始化列表中使用 using 语句,但我很确定这在 c# 中是不可能的。
编辑:感谢你们的快速回复。所以我应该做的是从 IDisposable 派生,然后更改构造函数并添加两个这样的处理方法?:
这基本上就是我正在做的事情:
c# - 在使用 StreamReader 并发文件访问的情况下引发异常
我发现一篇关于使用 StreamWriter 处理并发文件访问的帖子。
问题是答案并不管理正在访问文件的场景,而是多个进程。
让我们简短地告诉它:
- 我有多个应用程序
- 我需要数据库中的集中式日志记录系统
- 如果数据库失败,我需要一个文件系统日志的回退
有一个已知的并发场景,多个应用程序(进程)将尝试写入该文件。这可以通过在短暂延迟后重新尝试写入来管理。但如果是安全错误或文件名语法错误,我不想重新尝试。
代码在这里:
我唯一的问题是在并发写入的情况下将引发的异常类型。我已经知道事情可以做不同的事情。让我添加一些注意事项:
- 不,我不想在那种情况下使用 NLog
- 是的,我使用 IOC + Mutex 处理并发以实现进程内并发
- 是的,我真的希望所有日志都写在同一个文件中