2016-03-18 21 views
0

所以我嘗試過使用trinet核心io ntfs dll在C#中使用替代數據流(使用VS 2015),但我遇到了一個問題:我找不到寫入文件的方法。我嘗試的代碼:如何使用Trine Core io NTFS?

var fileinfo = new FileInfo(filename); 
var altstream = fileinfo.GetAlternateDataStream("key").OpenWrite(); 
altstream.WriteLine(Convert.ToString(radix)); 
altstream.WriteLine(Convert.ToString(push)); 
altstream.WriteLine(Convert.ToString(mult)); 
altstream.WriteLine(Convert.ToString(fill)); 

它只是調試之前引發錯誤消息:

「的FileStream」不包含關於「的WriteLine」和無 擴展方法「的WriteLine」接受的第一定義類型 「的FileStream」的說法可以找到(是否缺少using指令或程序 集引用?)

我應該怎麼辦呢?我無法在網上找到它,但需要爲我的項目使用替代數據流。

回答

1

altstreamFileStream實例。 FileStream只能理解字節,而不能理解字符串。爲了將字符串(字符)轉換爲字節,您必須選擇字符編碼系統,例如Ascii,UTF8,UTF16等。

一旦您選擇了編碼,您可以使用StreamWriter類能夠直接將文件寫入文件:

FileStream altstream = fileinfo.GetAlternateDataStream("key").OpenWrite(); 

// Note that I've picked UTF8 as an encoding. You need to figure out 
// for yourself, based on your requirements or desires, what encoding 
// to use. UTF8 is a popular encoding though. 
StreamWriter altstreamWriter = new StreamWriter(altstream, Encoding.UTF8); 

altstreamWriter.WriteLine(Convert.ToString(radix)); 
altstreamWriter.WriteLine(Convert.ToString(push)); 
altstreamWriter.WriteLine(Convert.ToString(mult)); 
altstreamWriter.WriteLine(Convert.ToString(fill));