Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.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
从getContent include新行用java保存文件_Java_File_File Io_Makefile - Fatal编程技术网

从getContent include新行用java保存文件

从getContent include新行用java保存文件,java,file,file-io,makefile,Java,File,File Io,Makefile,我正在用java编写一个文件,其中内容是使用getContent获取的,但问题是它忽略了新行: ie:该字段中的输入为: 1 2 3 但我在文件中得到的是: 123 我的代码是: public void saveMap() { JFileChooser chooser = new JFileChooser(); chooser.setCurrentDirectory(new File("")); int retrival = chooser.showSaveDial

我正在用java编写一个文件,其中内容是使用getContent获取的,但问题是它忽略了新行:

ie:该字段中的输入为:

1
2
3
但我在文件中得到的是:

123
我的代码是:

 public void saveMap() {
    JFileChooser chooser = new JFileChooser();
    chooser.setCurrentDirectory(new File(""));
    int retrival = chooser.showSaveDialog(null);
    if (retrival == JFileChooser.APPROVE_OPTION) {
        try(FileWriter fw = new FileWriter(chooser.getSelectedFile())) {


            fw.write(editArea.getText());
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}

你用记事本++打开文件了吗

这可能是因为\r\n\r\n在Windows中显示不均匀(据我所知,只有\r\n正确显示)

尝试更改此行:

fw.write(editArea.getText());
致:


使用以下代码以准确格式保存文件,并首先在写字板中查看此文件

try
{
     FileWriter fw=new FileWriter(chooser.getSelectedFile());          
     fw.write(String.format(editArea.getText().replaceAll("[\r|\n|\r\n]", "%s"), System.getProperty("line.separator")));
     fw.close();
}
catch(Exception e)
{
    e.printStackTrace();
}

您是否尝试在写字板中打开文件并检查换行符是否显示正确。记事本不会格式化大多数内容。如果您选择基于操作系统的新行fw.write(String.format(“这只是测试%s这只是测试2”,System.getProperty(“line.separator”)),此代码可能对您有用;
try
{
     FileWriter fw=new FileWriter(chooser.getSelectedFile());          
     fw.write(String.format(editArea.getText().replaceAll("[\r|\n|\r\n]", "%s"), System.getProperty("line.separator")));
     fw.close();
}
catch(Exception e)
{
    e.printStackTrace();
}