2013-02-21 81 views
0

如何在Powershell中将流保存到磁盘?任何例子赞赏。如何在Powershell中将流保存到磁盘?

(有关信息,该流是WCF Web服务调用的返回值)

+0

你能请告诉到目前为止你写的代码(删除任何敏感的),或者给周围的你在做什么的更多信息,你要处理的ECT什么对象.. – 2013-02-21 12:52:40

+0

我还没有还有什么,我是一个powershell新手。如何显示打开文本文件并保存流的示例? – MalcomTucker 2013-02-21 13:30:34

+0

没有粗鲁或冒犯的声音,在这里的人可以帮助你之前,你必须付出一些努力去做你想做的事情。 在Powershell中,.Net库可以使用,所以如果你来自.Net背景,你可以在.Net中显示你正在做什么,我们可以帮助将它转换为Powershell。 另外,WCF web服务调用返回了什么?它是一个FileStream对象吗? MemoryStream的?纯文本? – 2013-02-21 13:46:31

回答

2

通常情况下,如何做的事情用C#这是谷歌非常有用。从C#到Powershell的转换是比从VB.Net更容易的,因为Powershell的语法有点类似。从任何C#示例中,可以轻松找出.Net类的使用方式和方式。掌握了这些知识后,将这些技术转化为Powershell是相当有前途的。

首先,将数据获取到一个变量。创建一个指向文件的FileStream。创建一个使用文件流并将数据写入其中的StreamWriter。像这样,

$webPage = [Net.WebClient]::DownloadString("http://www.google.com") # Sample data 
$fs = new-object IO.FileStream("c:\temp\out.txt", [IO.FileMode]::Append) # New FileStream to some file 
$sw = new-object IO.StreamWriter $fs # A streamwriter will write to the file via filestream above 
$sw.WriteLine($webPage) # Write stuff to the file via streamwriter 
$sw.Close() # Close writer 
$fs.Close() # Close stream 
+0

真棒的东西,谢谢vonPryz :) – MalcomTucker 2013-02-21 14:31:06

+0

@vonPryz的解决方案很好,我已经使用它自己。例如:New-Item -ItemType file -Path“c:\ temp”-Name“out.txt”-Value $ webPage -Force(-Force will force覆盖文件,如果它已经存在) – 2014-06-12 16:02:14