JAVA从文件中写入和读取的问题...
packagetest;importjava.io.*;/**@authorKimser.Lam*/publicclassReadAndWrite{publicstati...
package test; import java.io.*; /* * @author Kimser.Lam */ public class ReadAndWrite { public static void main(String[] args) throws Exception { File readDir=new File("C:\\WINDOWS\\system32"); File writeDir=new File("D:"+File.separator+"FileName3.txt"); String[] FileName=readDir.list(); //读取该目录下的所有文件名 for(int k=0;k<FileName.length;k++) System.out.println(FileName[k]); //打印出所读取的文件名 FileOutputStream fos=new FileOutputStream(writeDir);// 将文件名写入FileName.txt for(int i=0;i<FileName.length;i++) fos.write((FileName[i]+"\t").getBytes()); FileReader fr=new FileReader(writeDir); char[] name=new char[FileName.length]; fr.read(name); //从FileName3.txt中读取文件名,并存入数组name中 System.out.println(new String(name)); //打印出所读取的文件名 } } 刚读取到该目录所有文件名的时候打印出来是全部都打印出来的.但,我写入TXT文件后,再从文件中读取文件名,再打印的时候,就不能打印出全部了,只打印出前面很少的一部分.请问,这是为什么?要怎样才能打印出全部?
展开
2个回答
展开全部
/** * 读出1.txt中的内容,写入2.txt中 * */ import java.io.*; public class ReadWriteFile{ public static void main(String[] args){ try{ File read = new File("c:\\1.txt"); File write = new File("c:\\2.txt"); BufferedReader br = new BufferedReader( new FileReader(read)); BufferedWriter bw = new BufferedWriter( new FileWriter(write)); String temp = null; temp = br.readLine(); while(temp != null){ //写文件 bw.write(temp + "\r\n"); //只适用Windows系统 //继续读文件 temp = br.readLine(); } bw.close(); br.close(); }catch(FileNotFoundException e){ //文件未找到 System.out.println (e); }catch(IOException e){ System.out.println (e); } } }
满意请采纳
满意请采纳
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询