Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在BufferReader读取的文本中添加换行符,以便使用iText7将其转换为pdf_Java_Itext7 - Fatal编程技术网

Java 如何在BufferReader读取的文本中添加换行符,以便使用iText7将其转换为pdf

Java 如何在BufferReader读取的文本中添加换行符,以便使用iText7将其转换为pdf,java,itext7,Java,Itext7,这是我创建的文本文件 try { File info = new File("StudentInfo.txt"); if(!info.exists()) { info.createNewFile(); } PrintWriter D = new PrintWriter(info); D.println("Student Name "+" : "

这是我创建的文本文件

     try {
    File info = new File("StudentInfo.txt");
    
    if(!info.exists()) {
        info.createNewFile();
    }
    
    PrintWriter D = new PrintWriter(info);
    
    D.println("Student Name "+" : "+"MUSTAPHA HASSAN;\n"+"Class \t\t"+"\t\t: "+"PRIM 
              6A;\n"+"No.in Class \t "+" : "+"43;\n"+"Position\t\t\t: "+"2nd;");                
    D.close();
    
    }catch (Exception e) {

    }
我得到了文本文件的输出

   Student Name  : MUSTAPHA HASSAN;
   Class                : PRIM 6A;
   No.in Class    : 43;
   Position         : 2nd;

    
将文本文件转换为pdf

  try {
    String Z = "C:\\Users\\TEXT.pdf";
    OutputStream D = new FileOutputStream(Z);
    PdfWriter PW = new PdfWriter(D);
    PdfDocument Test = new PdfDocument(PW);
    Document document = new Document(Test, PageSize.A4);
  
      Paragraph T = new Paragraph();
      
       
     public static void PARA (Paragraph T , String line) {
         StringTokenizer tokenizer = new StringTokenizer(line, ";");
         while (tokenizer.hasMoreTokens()) {
             T.add(new Paragraph(tokenizer.nextToken()));
         }
     }

      BufferedReader bf = new BufferedReader(new FileReader("C:\\Users\\StudentInfo.txt"));
        String line = bf.readLine();
        PARA(T , line);
         while ((line = bf.readLine()) != null) {
             PARA(T , line);
         
         }
         bf.close();

     document.add(T);
     document.close();
  }catch (Exception e) {

  }
pdf输出如下所示

 Student Name : MUSTAPHA HASSANClass : PRIM 6ANo.in Class : 43Position : 2nd
是否有任何方式使pdf输出看起来与文本中的相同

我想要这个表单中的pdf输出

   Student Name  : MUSTAPHA HASSAN;
   Class                : PRIM 6A;
   No.in Class    : 43;
   Position         : 2nd;
请引导我

   public static void PARA (Paragraph T , String line) {
     StringTokenizer tokenizer = new StringTokenizer(line, ";");
     while (tokenizer.hasMoreTokens()) {
        //Remove T.add(new Paragraph(tokenizer.nextToken()));

     //Replace it with
     T.add(tokenizer.nextToken());
    
     }

 }
然后,正如Steve所说的“试试PARA(T,line+'\r')

最后,您可以将其作为输出

         Student Name : MUSTAPHA HASSAN
         Class        : PRIM 6A
         No.in Class  : 43
         Position     : 2nd

尝试
PARA(T,line+'\r')它仍然不起作用输出是
学生姓名:MUSTAPHA HASSANClass:PRIM 6ANo.在课堂上:43职位:第二名
好吧,我只是觉得值得一试。我没有其他想法。谢谢你,谢谢你的努力