在 Java 中替代 BufferedReader.readLine() 以输出多行文本

Alternative to BufferedReader.readLine() in Java to output multiple lines of text

我有一个作业要用给定的密钥加密文本文件。我让它工作,除了当我有一个包含多行文本的文本文件时,输出全部在一行上。我相信这是因为 BufferedReader.readLine() 不保存结束行?这是我的代码:

static void encode(File file, String key) throws IOException
{
    FileReader fileReader = new FileReader(file); 
    BufferedReader bufferedReader = new BufferedReader(fileReader); 
    String current;  
    char content[] = {};
    StringBuilder string = new StringBuilder(String.valueOf(content)); 

    while((current=bufferedReader.readLine())!=null)  //this reads the file contents and calls our convertString method
    {

        for(int i=0;i<current.length();i++) 
        {
            content = new char[current.length()]; 
            if(Character.isLetter(current.charAt(i))) 
            {
               content[i] = convertString(current.charAt(i), key);
               string.append(content[i]); 
            }
            else 
            {
               content[i] = current.charAt(i);
                string.append(content[i]); 
            }
         }
     }
    System.out.println(string); 
    fileReader.close();

}

我知道有 BufferedReader.read(),但那是一个 int 类型。我不确定是否有一个简单的替代品,或者我是否必须从根本上更改我的代码。

只需自己添加换行符

string.append("\n");

如果内容全部打印在一行上,通常寻找一种方法来添加“\n”