使用FileWriter编写的文件是32 KB,24 KB,16 KB,...大或空

时间:2010-05-17 07:52:01

标签: java file-io

我将文件读入字符串,更改第一行,然后将此字符串写入新文件。我通过以下代码执行此操作(稍微缩短):

while(jspIterator.hasNext()){
                    String line = (String) jspIterator.next();
                    if (i == 0) {
                        if (line.startsWith("bla bla") && line.endsWith("yada")) {
                            line = line.replaceFirst("this", "that");
                        }
                    }
                    jspAsString += line;
                    i++;
                }

FileWriter newJspWriter = new FileWriter(newJspFile);
                newJspWriter.write(jspAsString);

现在以这种方式写入的文件是32,24,16,8 KBy大或完全为空。调试时,我看到String已正确组装。当我将变量jspAsString打印到控制台时,它也显示正确。

你知道为什么FileWriter会这样吗?