将ByteArray byte []转换为文件对象C#

时间:2018-07-23 15:02:49

标签: c# arrays

我正在尝试使用以下result变量

的文件对象
var data = ExportFactory.ExportDataJson(json, ExportToFormat.PDFiTextSharp4);
File.WriteAllBytes("bJson.pdf", data);
var result = File.ReadAllLines("bJson.pdf");

我搜索没有找到解决此问题的结果。 如果有人有帮助我的想法。

  • PS:我的字节数组的大小为1553

1 个答案:

答案 0 :(得分:2)

我猜您想使用File.ReadAllBytes而不是File.ReadAllLines

  • File.ReadAllLines打开文本文件,读取文件的所有行,然后关闭文件。
  • File.ReadAllBytes打开一个二进制文件,将该文件的内容读取到字节数组中,然后关闭该文件。

因此,如果您想读取.pdf,我将使用File.ReadAllBytes读取文件为byte[]

您的文件是.pdf,可以尝试使用iTextSharpPdfReader类来获取Pdf文件信息。

var data = ExportFactory.ExportDataJson(json, ExportToFormat.PDFiTextSharp4);
File.WriteAllBytes("bJson.pdf", data);
var dataBuffer = File.ReadAllBytes("bJson.pdf");
PdfReader result = new PdfReader(dataBuffer);

编辑

我看到了你的评论。如果要获取有关文件的信息(例如filesize,文件名...)

您可以尝试使用FileInfo类,FileInfo构造函数参数是文件路径。

 FileInfo fileInfo = new FileInfo("bJson.pdf");
 var fileSize= fileInfo.Length;
 var fileName = fileInfo.Name;