2011-06-15 48 views
0

在我的應用程序中,我將gridview數據導出爲ex​​cel並將其存儲到特定文件夾中,現在我想將此excel文件設置爲只讀,以便任何人都不應編輯它。將excel表導出爲只讀

我寫了這樣的代碼:

保護無效Button5_Click(對象發件人,EventArgs的){

 this.GridView1.Page.EnableViewState = false; 
     StringWriter tw = new StringWriter(); 
     HtmlTextWriter hw = new HtmlTextWriter(tw); 
     hw.WriteLine("<b><font size='5'> Report</font></b>"); 
     this.GridView1.RenderControl(hw); 
     string HtmlInfo = tw.ToString(); 
     string DocFileName = "Report" + ".xls"; 
     string FilePathName = Request.PhysicalPath; 
     FilePathName = FilePathName.Substring(0, FilePathName.LastIndexOf("\\")); 
     FilePathName = @"C:\Excel" + "\\" + DocFileName; 
     FileStream Fs = new FileStream(FilePathName, FileMode.Create); 
     BinaryWriter BWriter = new BinaryWriter(Fs,System.Text.Encoding.GetEncoding("UTF-8")); 
     BWriter.Write(HtmlInfo); 
     BWriter.Close(); 
     Fs.Close(); 

    } 

ANY1幫我在這...

回答

0

你想使文件寫入後只讀?

​​3210

編輯

這是一個網站?我不知道你可以阻止某人下載然後修改你的文件的方式。您可以使用API​​來代替。我們在這裏使用Aspose.Cells以使表格在發送給客戶端之前只讀。

+0

@傑夫 - 它不工作.. – Sweety 2011-06-15 12:11:06

+0

@傑夫 - excel表得到修改... – Sweety 2011-06-15 12:13:53

+0

@傑夫 - 我在我的本地機器創建文件夾,我保存這個excel工作表現在我想要的是它不應該是可編輯的我怎麼能做到這一點.. – Sweety 2011-06-15 12:16:01

0

我想你想有類似的東西

FileStream Fs = new FileStream(FilePathName, FileMode.Create, Fileaccess.Read); 

查看此鏈接瞭解更多信息 http://msdn.microsoft.com/en-us/library/4z36sx0f.aspx#Y494

+0

@院長 - 它的throewing錯誤像這個服務器錯誤'/ WebSite31'應用程序。 結合FileMode:使用FileAccess創建:讀取無效 – Sweety 2011-06-15 11:35:23