C#中,我用binaryWriter写的二进制文件。但是通过文本编辑器打开后,里面保存的仍是字符。

2024-12-15 00:33:49
推荐回答(2个)
回答1:

用binaryWriter写的二进制文件, 假如你 写的内容, 是 直接可见的 ABCDE 这样的数据。
那么文本编辑器打开后, 看到的,当然是 ABCDE 了。

binaryWriter写的二进制文件, 意味着你可以写任何内容, 例如 字符ABC / 数字123 (注意,这个数字, 不是以字符串方式写入,而是以 int 之类的方式写入)
然后可以用 二进制的方式, 读取出来。

回答2:

richTextBox1不能打开word文件的,只能将word文件转换成.rtf格式的文件才能载入richTextBox1中。
下面是将word文件转换成.rtf格式的C#代码,希望对你有帮助。

OpenFileDialog f = new OpenFileDialog();
if ((f.ShowDialog() == DialogResult.OK) && f.FileName != "")
{
//创建一个word的实例
Microsoft.Office.Interop.Word.Application newApp = new Microsoft.Office.Interop.Word.Application();
// 指定源文件和目标文件
object Source = f.FileName;
object Target = f.FileName.Replace(".doc", ".rtf");

object Unknown = Type.Missing;

// 打开要转换的Word文件
newApp.Documents.Open2000(ref Source, ref Unknown,
ref Unknown, ref Unknown, ref Unknown,
ref Unknown, ref Unknown, ref Unknown,
ref Unknown, ref Unknown, ref Unknown,
ref Unknown);

// 指定文档的类型
object format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatRTF;

//改变文档类型
newApp.ActiveDocument.SaveAs2000(ref Target, ref format,
ref Unknown, ref Unknown, ref Unknown,
ref Unknown, ref Unknown, ref Unknown,
ref Unknown, ref Unknown, ref Unknown);

//关闭word实例
newApp.Quit(ref Unknown, ref Unknown, ref Unknown);
} 不知道能不能帮上你