繁体   English   中英

将文件重定向到流C#

[英]Redirect writes to a file to a stream C#

我想问一下是否可以将写入重定向到特定文件,应用程序中的内存流,以便我可以立即读取它。 如果可能的话,请说明如何操作。

谢谢。

确保您的应用程序可与Stream ,然后可以使用MemoryStream具体实现在没有文件的情况下完成流传输。

您需要的是一个流,该流既可以写入文件,也可以写入另一个正在观看的流-流拆分器,在Unix世界中通常称为tee

对于.NET,您可以使用流拆分器的此实现 向其传递一个FileStream (以便将文件写入),并为第二个流传递一个Stream实现,该实现将在写入Stream执行所需的任何操作(例如,具有重写Write方法的MemoryStream的子类)。

更新:我从您的评论中看到我的答案不是您所需要的-从您最初的问题中我没有意识到您无法控制应用程序向文件的写入。

为了获得这种控制,要获得最佳控制,您将需要使用低级驱动程序来拦截系统调用-就像FileMon一样。 要稍微减少控制量,可以使用System.IO.FileSystemWatcher

我不知道该如何使用您所说的方式,但是您可以使用FileWatcher来挂接文件。 如果将其书面通知您,您可以阅读。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM