2017-02-28 10 views
0

ファイルストリームを使用してPDFファイルを作成しようとしました。パス、私はファイルを開くしようとすると、Adobe Readerは、上記のタイトルで述べたエラーを投げている。私は何が間違っているのか分からないが、誰かがそれを調べて助けてくれたら大いに感謝するだろう。ありがとうございました!。ここでFILESTREAMのための私のコードは次のとおりです。サポートされていないファイルまたはファイルが破損しているため、Adobe Readerが 'StreamTest5.pdf'を開くことができませんでした。

  System.IO.FileStream wFile; 
      byte[] byteData = null; 
      byteData = Encoding.ASCII.GetBytes("FileStream Test"); 
      string filePath = $"{_ApplicationPath}PrintedResults\\StreamTest5.pdf"; 
      wFile = new FileStream(filePath, FileMode.Create); 
      wFile.Write(byteData, 0, byteData.Length); 
      wFile.Close(); 
      using (var fileStream = new FileStream(filePath, FileMode.Open)) 
      { 

       Console.WriteLine("This is a test stream file"); 

      } 
     System.Diagnostics.Process.Start(filePath); 

答えて

1

あなたがコンテンツ「FileStreamを試験」でテキストファイルを書き込むことが、「.PDF」のファイル拡張子とそれを命名しています。これはPDFファイルではありません。それは誤解を招く名前のテキストファイルです。 Adobe Readerが有効なPDFではないことを正しく報告しています。

+0

テキストではなくpdfファイルを書くためのコードを教えてください。 – user0594

+1

PDFを生成するにはサードパーティ製のライブラリが必要です。また、PDFフォーマット自体を研究して、独自の書き込みを試みるのに多くの時間を費やします。 – Tim

1

これが答えではないが、私はコメントとしてこれを追加するのに十分な評判を持っていない:あなたはhttp://www.dynamicpdf.com/ によって彼らの無償評価版を提供するサードパーティのライブラリに見たいと思うかもしれません

は非常に可能であり、彼らのウェブサイトで言うように時間制限はありません。もう少し努力すれば、評価版だけでかなり複雑なPDFを作成することができます!

関連する問題