private void writeFile() {
// TODO Auto-generated method stub
boolean f;
int i,j;
try{
File file=new File("123.txt");
if(file.exists()){ja.append("文件存在!"+lineSeparator);}
else{
ja.append("文件不存在!"+lineSeparator);
file.createNewFile();
ja.append("文件创建成功!"+lineSeparator);
} BufferedWriter output = null;
if(iex){
for(i=m;i<=n;i++){
f=true;
for(j=2;j<i-1;j++){
if(i%j==0){f=false;break;}
}
if(f){
output = new BufferedWriter(new FileWriter(file));
output.write(""+i+",");
output.newLine();
}
}
output.close();
}
else{
ja.append("输入有误!");
}
}catch(Exception e){e.printStackTrace();}
}
上面是其中一段代码,整个代码的功能是,当我输入两个数时,比如1 10,它就会在图形界面显示1-10之间的素数,并在界面上显示,并把结果写到txt文 档中,但当我执行后,在txt文档中,却只有最后一个素数,把前面的素数覆盖了……请指教,非常感谢……
// TODO Auto-generated method stub
boolean f;
int i,j;
try{
File file=new File("123.txt");
if(file.exists()){ja.append("文件存在!"+lineSeparator);}
else{
ja.append("文件不存在!"+lineSeparator);
file.createNewFile();
ja.append("文件创建成功!"+lineSeparator);
} BufferedWriter output = null;
if(iex){
for(i=m;i<=n;i++){
f=true;
for(j=2;j<i-1;j++){
if(i%j==0){f=false;break;}
}
if(f){
output = new BufferedWriter(new FileWriter(file));
output.write(""+i+",");
output.newLine();
}
}
output.close();
}
else{
ja.append("输入有误!");
}
}catch(Exception e){e.printStackTrace();}
}
上面是其中一段代码,整个代码的功能是,当我输入两个数时,比如1 10,它就会在图形界面显示1-10之间的素数,并在界面上显示,并把结果写到txt文 档中,但当我执行后,在txt文档中,却只有最后一个素数,把前面的素数覆盖了……请指教,非常感谢……
BufferedWriter output = new BufferedWriter(new FileWriter(file));//在这里创建,不要每找一个素数就创建一个
if(iex){
for(i=m;i<=n;i++){
f=true;
for(j=2;j<i-1;j++){
if(i%j==0){f=false;break;}
}
if(f){
output.write(""+i+",");
output.newLine();
}
}