从java代码创建PDF文件[不使用iText]

从java代码创建PDF文件[不使用iText],java,pdf,java-io,fileoutputstream,adobe-reader,Java,Pdf,Java Io,Fileoutputstream,Adobe Reader,我想从java代码创建一个PDF文件。这就是我到目前为止写的- public class IOExp { public static void main(String args[]) throws java.io.IOException { java.io.FileOutputStream fout=new java.io.FileOutputStream("MyFile.pdf"); byte [] arr=("Hello World.\n"+"

我想从java代码创建一个PDF文件。这就是我到目前为止写的-

public class IOExp  {
    public static void main(String args[]) throws java.io.IOException   {
        java.io.FileOutputStream fout=new java.io.FileOutputStream("MyFile.pdf");

        byte [] arr=("Hello World.\n"+"My name is Prateek Mathur, and I am  a great programmer.\n").getBytes();
        fout.write(arr);
    }
}
创建MyFile.pdf没有任何问题,但打开它时,Adobe Reader会显示以下消息-

'Abode Reader can not open 'MyFile.pdf' because it is either not a supported file
 type or because the file has been damaged (for example, it was sent as an email
 attachment and wasn't correctly decoded.'
我已经熟悉iTextAPI,想知道如何手动创建PDF文件


我的代码有什么问题,需要进行哪些更改才能成功创建PDF文件???

我不认为只需创建扩展名为.PDF的文件就可以创建PDF。创建有效的pdf需要特定格式的有效标题和内容字节。与其重新发明whee,不如使用Apache等框架。

我不认为只需创建扩展名为.pdf的文件就可以创建pdf。创建有效的pdf需要特定格式的有效标题和内容字节。与其重新发明whee,不如使用Apache等框架。

PDF文件与简单的纯文本文件完全不同。您创建的是一个纯文本文件。将扩展名更改为
.txt
,您将在使用纯文本编辑器打开时看到文本。使用类库。PDF文件与简单的纯文本文件完全不同。您创建的是一个纯文本文件。将扩展名更改为
.txt
,您将在使用纯文本编辑器打开时看到文本。使用类似的库。

如果要手动创建PDF文件,需要阅读PDF格式规范,以便输出所需的头字节和PDF文件的内部结构。你可以在这一页上找到初学者(因为规范很难阅读)为什么?为什么你不能使用一个已经在使用的库呢?如果您出于某些未说明的原因不喜欢iText,还有其他原因。如果您想手动创建PDF文件,则需要阅读PDF格式规范,以便输出所需的头字节以及PDF文件的内部结构。你可以在这一页上找到初学者(因为规范很难阅读)为什么?为什么你不能使用一个已经在使用的库呢?如果你不喜欢iText是因为一些未说明的原因,还有其他原因。