方法有很多,不同的了流的组合都会有很多方法达到您的目的。下面给您提供两种方法。
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.PrintWriter;
public class a{
public static void main(String[] args)throws Exception{
char[] buf=new char[]{'a','b','c'};
/*法一 利用缓冲流写入String*/
BufferedWriter bw=new BufferedWriter(new FileWriter("./a.txt"));
bw.write(new String(buf));//或者bw.append(new String(buf));
bw.newLine();//写入一个换行符,根据需要
bw.flush();
bw.close();
/*法二 使用PrintWriter的print()系列方法*/
PrintWriter pw=new PrintWriter(new BufferedWriter(new FileWriter("./a.txt")));
pw.print(buf);
pw.close();
}
}
以上的两种方法都是使用了字符流的子类。流中的大多数提供数组书写的一般都是byte[]和char[],char[]使用字符流是可以直接书写的(上述法2,法1是包装成String再写的)。
对于其他的int[]、float[]、double[]、boolean[]数组的书写给您提供以下类。
ConvertFromArray类提供上述四种数组的转换,返回String类型,您可以使用字符流直接书写。
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class Ac {
public static void main(String[] args){
char [] a1={'A','B','C'};
try {
File file=new File("E:\\1.txt");
FileWriter fw=new FileWriter(file);
fw.write(a1);
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
我一般把信息记录在专门的一个类里面 然后用ObjectOutputStream