2010-08-19 148 views
0

您有一個庫,並且庫中的一個函數提供了一個功能,可以在其中輸出一個文件(可能在每次執行時輸出到不同的路徑)。每次執行時文件的內容和名稱都是不變的。執行此操作的最佳方法是什麼?將文件的內容聲明爲一個字符串並且每次都打印一次(可能不是個好主意,該文件長度大約爲1000行)?或者有一個文件總是存在於庫dll相同的文件夾中?如何確保編譯器將始終包含此文件?或者有沒有更好的方法,例如以某種方式將文件嵌入到dll中?C#.NET:輸出相同文件的庫

注意,輸出這個文件是不是該庫做的唯一的事情,它是由函數庫

由於完成子任務之一!

回答

1

如果內容在每種情況下都是相同的,並且不重要(也就是說,您不能將它寫在幾行代碼中),然後將其作爲資源文件嵌入到程序集中。

然後,您可以使用Assembly.GetManifestResourceStream來獲取輸入流,並將數據複製到文件中。 (如果你使用的是.NET 4.0,你可以使用Stream.CopyTo方法,你就完成了。)

+0

啊我想這就是我要找的。我如何嵌入資源文件? (使用VS2010) – 2010-08-19 06:36:56

+0

@Louis:將文件添加到項目中,單擊屬性並將構建操作設置爲「Embedded Resource」。 – 2010-08-19 06:58:12

0

你可以在你的VS2010項目中創建一個資源文件,並且可以作爲一個靜態成員自動生成的類。資源也會自動嵌入。

嘗試添加新項目 - >資源文件。創建文件後,將文件拖到設計器表面上。