簡體   English   中英

字符串到文件不維護換行符顯示在終端正確性 java

[英]String to file not maintaing line breaks displays in terminal correclty java

我想讀取一個文本文件,更改一些文本然后輸出到一個文本文件。 我會在記事本中打開這個文件

Java 新手 - 這已在整個論壇中以不同的方式重新整理和發布。 他們似乎總是說您缺少字符串中的 /n - 我以為我在下面的代碼中做到了這一點。

令我困惑的部分是當我使用 showfile 方法時它正確顯示在我的終端中。

我假設它是我編寫文件的方式。 我想繼續使用我的方法而不是 String 變量

原始文件包含文本

鮑勃

紅色的

我用它來讀取文本文件並將其輸入到一個字符串中。

public void readFile(String fileName)
{
    fileText = "";

    try
    {
        Scanner file = new Scanner(new File(fileName));
        while (file.hasNextLine())
        {
            String line = file.nextLine();
            fileText += line +"\n";
        }
        file.close();
    }
    catch (Exception e)
    {
         System.out.println(e);

   }

我使用一種方法將所有“R”交換為“B”。

我使用 showFile 方法,它在我的終端中正確顯示

這顯示正確

鮑勃

public String showFile()
{
    return fileText;
}

但是后來我嘗試使用將字符串輸出到文件中。

try {
        File file = new File("test1.txt");
        FileWriter fileWriter = new FileWriter(file);
        fileWriter.write(startupModified.showFile());
        fileWriter.flush();
        fileWriter.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

它保持我的間距,但我松開了換行符

顯示:

鮑勃床門

這是 startupModified 的構造函數類

 public StartUpFile(String fileName)
{
    readFile(fileName);
        }

現在功能正常

更改了文件文本 += 行 +"\\n";

to fileText += line +"\\r\\n";

我認為它是作者,因為它在終端中正確顯示。

謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM