用java编写的代码复制java程序,结果复制完的java程序中没有保留原java程序中的换行符都把代码写到一行了

package tool;
import java.io.File;
import java.io.FileWriter;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.Scanner;
public class Test{
private static void copy ( String src, final String dest, final String suffix )
{
File srcFile = new File (src);
srcFile.listFiles (new FilenameFilter ()
{
@Override
public boolean accept ( File dir, String name )
{
if (suffix.equalsIgnoreCase (name.substring (name.lastIndexOf ('.') + 1, name.length ())))
{
try
{
File destFile = new File (dest + File.separator + name);
FileWriter fw = new FileWriter (destFile);
Scanner scanner = new Scanner (new File (dir + File.separator + name));
while (scanner.hasNextLine ())
{
fw.write (scanner.nextLine ());
}
fw.flush ();
fw.close ();
scanner.close ();
}
catch (IOException e)
{
e.printStackTrace ();
}
}
return false;
}
});
}
public static void main ( String[] args )
{
copy ("i:/a", "i:/b", "java");
}}

骚年,你这个取一行写一行,人家java已经去掉了换行符,你要取一行就在后面加换行符!!
while (scanner.hasNextLine ())
{
fw.write (scanner.nextLine ()+"\r\n");
}
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答