草庐IT

stdout_writer

全部标签

c# - 在 C# 中从 XML Writer 创建 XML 元素对象

我正在用C#编写一个Windows服务。我有一个XmlWriter,它包含XSLT转换的输出。我需要将XML放入XMLElement对象中以传递给Web服务。执行此操作的最佳方法是什么? 最佳答案 您不需要中间字符串,您可以创建一个直接写入XmlNode的XmlWriter:XmlDocumentdoc=newXmlDocument();using(XmlWriterxw=doc.CreateNavigator().AppendChild()){//Writeto`xw`here.//Nodeswrittento`xw`willno

c# - .net XmlSerialize 抛出 "WriteStartDocument cannot be called on writers created with ConformanceLevel.Fragment"

我正在尝试序列化一个类,将一个XML文件作为多个片段写入,即将类的每个对象作为一个单独的片段写入,没有XMLheader/根。下面是一个示例代码:[Serializable]publicclassTest{publicintX{get;set;}publicStringY{get;set;}publicString[]Z{get;set;}publicTest(){}publicTest(intx,Stringy,String[]z){X=x;Y=y;Z=z;}}classProgram{staticvoidMain(string[]args){Testt1=newTest(1,"t1

windows - 如何在 Windows 上访问 Node 中的 stdout.columns?

我正在编写一些Node代码以在控制台的最右侧粘贴一些文本。我的代码运行良好,但每当我调用process.stdout.columns时,它都会说我的窗口是80宽,无论实际宽度是多少。我在Windows7x64上运行cmd.exe。是否仍支持使用process.stdout.columns? 最佳答案 菲利克斯几乎是对的。在Windows中,ttyprocess.stdout.columns的属性由命令提示符窗口属性中的ScreenBufferSize决定。实际宽度由WindowSize决定。两者在windows中不同,但在linux

java - 作为 Windows 服务运行的 Java 应用程序中 STDOUT 存储的位置

我有一个Java应用程序作为Windows服务应用程序的后台进程运行。当发出控制台输出语句时,例如System.out.println,该输出存储在哪里。它是存储在Windows存储中,还是保留在JVM堆存储中? 最佳答案 答案已找到。当创建客户Appender时,第三方库有一种方法不会关闭log4j日志记录的控制台输出。有两种方法可以实现这一点,只有一种方法正确执行了操作。我切换到第二种方法,控制台消息在创建自定义Appender时停止。我重新运行了18小时后失败的作业。现在,它是3.5天(84小时)并且仍然很强劲。因此,可以确定

windows - 如何在 Perl 中线程安全地设置 STDOUT 编码?

根据文档,使用encoding模块与threads不是线程安全的,并且自perl1.18起已弃用。我在Windows7机器上使用perl5.16。我需要将输出转换为windows866编码。尝试运行线程时,以下代码解释器崩溃。useutf8;binmode(STDOUT,':encoding(cp866)');usethreads;my$thr=threads->create(sub{print"потокработает";})->detach();sleep1;print"основнойпотоктакжеработает";如果没有binmode(STDOUT,':cp866'

c - Detecting if stdout is a console with MS Visual compilation, mingw64提供的console

我维护一个生成二进制数据的命令行实用程序。请求时,数据可以重定向到stdout。这在stdout被重定向到管道或文件时有效,但当stdout是一个控制台时,情况就不太一样了,因为它会垃圾控制台。为了保护用户免受此类错误,程序必须检测stdout是否是控制台,并在是时退出。现在,这并不是什么新鲜事,快速浏览一下Internet就会发现多种解决方案。主要缺点是没有“通用”方法,VisualStudio需要自己的风格。我用于Visual的控制台检测器有一个缺陷:它没有检测到stdout是一个控制台当控制台由mingw提供时,我认为这意味着它是mintty。这里是相关的代码部分:#ifdefi

python - 如何 : workaround of close_fds=True and redirect stdout/stderr on windows

我遇到了一个问题:使用Python2.7,无法使用subprocess.Popen([.......],close_fds=True,stdout=subprocess.PIPE,...)在Windows上,由于限制。在我的例子中需要使用close_fds,因为我不希望子进程继承已经打开的文件文件描述符。这是在库中调用的,这意味着我无法控制已经打开的文件描述符(N标志)。这是一个knownbug,固定在Python3.4+我遇到的问题是:如何在不获取的情况下使用子进程close_fdsisnotsupportedonWindowsplatformsifyouredirectstdin/

c++ - 尝试在 Windows 上重定向标准输出和标准错误 - _fileno(stdout) 返回 -2

这是我的第一个问题!我准备将一些工作良好的C++代码从UNIX移植到Windows,它通过管道将stdout和stderr重定向到自定义GUI组件。我需要它来显示来自第三方库的反馈,该库仅将消息输出到我的GUI上的标准输出。根据这个答案https://stackoverflow.com/a/617158这应该工作。事实上,链接中的代码在使用VisualStudio2017构建的新命令行应用程序中按预期工作。但是在我现有的GUI应用程序中,调用_fileno(stdout)以及_fileno(stderr)两者都返回-2而不是预期值1和2,因此什么也没有发生。将1和2硬编码到相关函数也无

windows - 有没有办法在 Windows 中的脚本运行期间将 stderr 重定向到 stdout?

作为一名长期的UNIXshell脚本编写者/发布工程师,在我最近的工作中全职进入Windows环境,有些事情我不可避免地会错过。其中一个是我信赖的老“exec2>&1”,它在Bourneshell中在脚本运行期间将stderr和stdout永久地结合在一起,以便日志记录将捕获所有好的和坏的东西。我知道您可以将2>foo.log附加到每个命令行调用的末尾,但我想知道是否有更好的方法。在Windows环境中是否有任何等效项?我们在这里同时使用.BAT文件脚本和Perl脚本(主要用于构建自动化,但也用于其他一些事情),我非常想知道这是否可行。 最佳答案

windows - 如何在启动时重定向 stderr *而不*重定向 stdin 和 stdout?

在Windows中,我想使用CreatePipe和CreateProcess来启动一个进程,并捕获写入到stderr的文本。MSDN上有示例代码:http://msdn.microsoft.com/en-us/library/windows/desktop/ms682499(v=vs.85).aspx我的问题是我想重定向和捕获STDERR,但不理会STDIN和STDOUT。让它们仍然绑定(bind)到子进程的控制台窗口。(如果子进程是控制台进程而不是窗口进程。)如果我按照示例代码,将STARTUPINFO.hStdError设置为我的管道句柄,并将STARTUPINFO.hStdOut