File.ReadAllBytes 是否适用于 word doc 和 docx?
Does File.ReadAllBytes work on word doc and docx?
我需要加密一个 word 文件,为此我需要不只是读取 word 文件的文本,因为它可能还包含图像,所以我需要获取 Word Doc 或 Docx 内容作为字节然后加密它们然后创建一个带有新扩展名的新文件 DocSec 并将字节写入该文件。
我的问题是:是否可以用 File.ReadAllBytes 读取单词 doc\x 的内容,这样它也会考虑图像?
如果不是,推荐的方法是什么?
当然你可以使用任何文件。
所有类型的文件都是一个字节序列。
一般准则
加密步骤为
- 打开文件(如果真的很大请考虑 read() 而不是 readAllBytes())
- 使用您最喜欢的算法来加密读取的字节。
- 将新字节写入新文件(例如 newdoc.docsec)。
- 关闭两个文件。
- 删除原文件。
现在 MS Word 无法再读取您的文件。
解密
- 打开您的脚本文件(例如 newdoc.docsec)
- 对读取的字节使用您的解密算法。
- 将新字节写入新文件(例如 mydoc.doc)。
- 关闭两个文件。
- 删除 newdoc.docsec 个文件。
现在可以用MS Word打开了。
CodeProject 上的完整示例 File Encryption and Decryption in C#
我需要加密一个 word 文件,为此我需要不只是读取 word 文件的文本,因为它可能还包含图像,所以我需要获取 Word Doc 或 Docx 内容作为字节然后加密它们然后创建一个带有新扩展名的新文件 DocSec 并将字节写入该文件。
我的问题是:是否可以用 File.ReadAllBytes 读取单词 doc\x 的内容,这样它也会考虑图像?
如果不是,推荐的方法是什么?
当然你可以使用任何文件。
所有类型的文件都是一个字节序列。
一般准则
加密步骤为
- 打开文件(如果真的很大请考虑 read() 而不是 readAllBytes())
- 使用您最喜欢的算法来加密读取的字节。
- 将新字节写入新文件(例如 newdoc.docsec)。
- 关闭两个文件。
- 删除原文件。
现在 MS Word 无法再读取您的文件。
解密
- 打开您的脚本文件(例如 newdoc.docsec)
- 对读取的字节使用您的解密算法。
- 将新字节写入新文件(例如 mydoc.doc)。
- 关闭两个文件。
- 删除 newdoc.docsec 个文件。
现在可以用MS Word打开了。
CodeProject 上的完整示例 File Encryption and Decryption in C#