我创建了一个asp.net应用程序,它具有一个将Html表转换为word Document的功能。我成功地做到了这一点。但现在我需要用密码保护我的文件。是否可以通过添加密码使文件安全。我的转换代码如下所示。
Response.ClearContent();
Response.Buffer = true;
Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", DateTime.Today.ToShortDateString().Replace("/", "").Replace("-", "") + "_" + DateTime.Now.ToShortDateString() + ".doc"));
Response.ContentType = "application/ms-word";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
tblMain.RenderControl(htw);
string strPath = Request.PhysicalApplicationPath + "Test.doc";
StreamWriter sWriter = new StreamWriter(strPath);
sWriter.Write(sw.ToString());
sWriter.Close();
如果有任何方法可以为保存文件添加密码,请帮助我。 提前谢谢..
答案 0 :(得分:1)
Word.Document允许您通过将密码作为参数传递来保存文档。请参阅this。
答案 1 :(得分:1)
这是C#,但看起来是您正在寻找的属性。
ThisDocument.SaveAs("c:\test\MyNewDocument.doc")
// C#
Object fileName = @"C:\Test\MyNewDocument.doc";
Object password = Type.Missing;
Object writePassword = Type.Missing;
ThisDocument.SaveAs(ref fileName, ref password, ref writePassword);
http://msdn.microsoft.com/en-us/library/office/aa192495(v=office.11).aspx
答案 2 :(得分:0)
您可以使用GroupDoce.Merger for .NET对文件进行保护
string password = "SomePasswordString";
AddPasswordOptions options = new AddPasswordOptions(FileFormat.Docx, password);
Stream openFile = new FileStream(sourceFile, FileMode.Open);
DocumentResult result = new DocumentHandler().AddPassword(openFile, options);
披露:我是GroupDocs的一名开发人员。