import java.io.*; import java.util.Scanner;public class random { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入你要生成的随机数的个数:"); int n = sc.nextInt();
File f=new File("test.txt"); for (int j = 0; j < n; j++) { double i = Math.random()*1000 ; System.out.println( i );
主要的错误在于你在循环里面每次都在重新创建输出流 还有一点建议 流的关闭一般写在finally 或者你在try catch里面都写上改正后的代码: Scanner sc = new Scanner(System.in); System.out.println("请输入你要生成的随机数的个数:"); int n = sc.nextInt();
import java.util.Scanner;public class random {
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要生成的随机数的个数:");
int n = sc.nextInt();
File f=new File("test.txt"); for (int j = 0; j < n; j++) {
double i = Math.random()*1000 ;
System.out.println( i );
try { FileOutputStream writeOut=new FileOutputStream(f); PrintWriter out=new PrintWriter(writeOut); out.print(i); out.close(); } catch(IOException e) {}
}
}
}我写的代码如下 功能是把生成的随即数写入文件 但是我这个只能写入最后一个数 怎么能够保留原有的数据下写入新的数据
还有一点建议 流的关闭一般写在finally 或者你在try catch里面都写上改正后的代码: Scanner sc = new Scanner(System.in);
System.out.println("请输入你要生成的随机数的个数:");
int n = sc.nextInt();
PrintWriter out= null;
try
{
File f=new File("g:\\test.txt");
FileOutputStream writeOut=new FileOutputStream(f);
out=new PrintWriter(writeOut);
for (int j = 0; j < n; j++) {
double i = Math.random()*1000 ;
System.out.println( i ); out.println(i);
}
} catch(IOException e)
{}
finally{
out.close();
}