C#process.StandardOutput.ReadToEnd明明有输出值,但取出的。。。
有时候使⽤precess调⽤CMD执⾏命令,获取执⾏后的结果,使⽤process.StandardOutput.ReadToEnd明明有输出值,但取出的值却为空,这是为什么呢?
先来看段代码:
//返回string字符串,⽤弹窗显⽰
MessageBox.Show(process.StandardOutput.ReadToEnd());
上边这段代码中,process.StandardOutput.ReadToEnd() 输出的是⼀个字符串,即获取process执⾏的结果(⼀般是调⽤CMD)。可是如果按照上边的代码书写,就会导致messagebox是个空⽩的弹窗,没有任何值。
同样的,如果在⼀个返回string字符串的函数中,使⽤下边的代码就会导致没有值传出来
代码⽚.
return process.StandardOutput.ReadToEnd();
下边是正确的显⽰⽅法
代码⽚.
//先定义⼀个output,然后把接收的结果给output,然后才能正确的return出去
output的反义词string output = string.Empty;
output = process.StandardOutput.ReadToEnd();
return output;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论