2012-10-05 209 views
0

我有一个WCF服务,它存储用户上传到文件服务器的文件(PDF文件)。现在,我想将这些PDF文件转换为字节,以便iOS客户端可以在iPad上下载它们。不希望将PDF存储为SQL中的BLOB,只需将其转换为字节并将它们发送到iPad即可。任何链接/示例代码来实现这一点非常感谢。将PDF转换为字节

回答

7

你可以简单地阅读PDF文件转换成字节数组:

+0

部分涉及到PDF文件流媒体在WCF – geva30

1

,你可以像下面:问题的

public byte[] ReadPDF(string filePath) 
     { 
      byte[] buffer; 
      FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read); 
      try 
      { 
       int length = (int)fileStream.Length; // get file length 
       buffer = new byte[length];   // create buffer 
       int count;       // actual number of bytes read 
       int sum = 0;       // total number of bytes read 

       // read until Read method returns 0 (end of the stream has been reached) 
       while ((count = fileStream.Read(buffer, sum, length - sum)) > 0) 
        sum += count; // sum is a buffer offset for next reading 
      } 
      finally 
      { 
       fileStream.Close(); 
      } 
      return buffer; 
     } 
+0

有此代码的一些问题。 while循环不是必需的,因为您在第一次读取时从流中读取所有字节。另外,你可以使用'using'语句而不是'try/finally'模块。总而言之,M4N的答案是以更简单的方式做同样的事情。 –

+0

是的M4N的答案非常简单,但我的问题是第二种解决方案。 – 2012-10-05 06:56:38