是否可以在类中包含一个文件

本文关键字:包含一 文件 是否 | 更新日期: 2023-09-27 18:00:15

有没有办法在类中包括文件内容,不仅包括文本文件,还包括二进制文件Char ArrayString或地球上的任何文件,所以在构造函数中,我的类应该将该内容写入指定文件中的文件

此文件可以是.exe、.pdf、.xls、.xml等…

是否可以在类中包含一个文件

我不太清楚你所说的"在类中包含文件内容"是什么意思,但根据我猜你的意思(将整个文件存储在类中?)你可能想看看Base64编码,这是一种可以将任何二进制数据转换为ASCII字符串的编码方案。

要存储二进制数据,可以使用Convert.ToBase64String将任何byte[]转换为Base64编码的字符串,并将其存储在类中。要取回它,请使用Convert.FromBase64String获取byte[]

和cbley一样,我也不确定你的意思,但你的意思可能是在程序集中嵌入一个文件?

  • 进入Visual Studio,单击"添加现有项",然后选择您的文件
  • 将文件的生成操作更改为"嵌入式资源"

当您运行应用程序时,您可以像这样将二进制文件提取到文件系统中。

//make sure MyNameSpace.MyFile.xls is the fully qualified name in your assembly to the file
using (Stream stream = Assembly.GetManifestResourceStream("MyNameSpace.Myfile.xls"))
{
   byte[] buf = new byte[stream.Length];
   stream.Read(buf, 0, stream.Length);
   File.WriteAllBytes(@"C:'MyFile.xls", buf);
}

看看File.ReadAllBytes()方法。

这是可能的,只需将文件内容存储为字节数组。编写一个转换器,将指定文件的字节保存为所需格式的文本文件(因此它表示一个数组)。然后将其剪切并粘贴到源代码中。