java - 我正在尝试编写一个程序,将随机数 0-1000 添加到文本文件中

标签 java

用户选择文件名和随机数的数量。目前,程序仅将最后一个随机数保存到文本文件中

public static void main(String[] args) throws FileNotFoundException, UnsupportedEncodingException {
    Scanner scan = new Scanner(System.in);
    System.out.println("Enter a filename:");
    String filename = scan.nextLine();
    System.out.println("Enter a positive Integer:");
    int number = scan.nextInt();

    for (int i=0; i<number;i++){
        Random rand= new Random();
        int random = rand.nextInt(1001);
        PrintWriter writer = new PrintWriter (filename, "UTF-8");
        writer.println(random);
        writer.close(); 
        System.out.println(random);
    }   
 }

最佳答案

在循环之外创建对象以避免此问题。否则,您将在每次迭代时创建新对象并覆盖每次创建的文件。

此外,您应该在完成后关闭流。

<小时/>

解决方案

Random rand = new Random()
int random;
PrintWriter writer = new PrintWriter (filename, "UTF-8");

for (int i=0; i<number;i++){
    random = rand.nextInt(1001);
    writer.println(random);
    System.out.println(random);
}   
writer.close(); 

关于java - 我正在尝试编写一个程序,将随机数 0-1000 添加到文本文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33883939/

相关文章:

java - docx4j模板生成:can not take the placeholder containing string as a separate entity

java - postDelayed 是否导致消息跳到队列的前面?

java - 在 Java 中检查具有 500 万行的文件中的唯一行数据

java - 如何模拟传递给构造函数的参数

java - 需要一种使用 RandomAccessFile 从 ArrayList 存储写入 Student 的方法

java - 泽西客户端非阻塞

java - 复制/粘贴在签名的小程序中不起作用

java - 使用正则表达式从文件中提取 JSON 键值映射

java - Fusion Charts 中的检索问题

java - 如何在不使用 hibernate/spring 拦截器的情况下为独立 Java 程序配置 EHcache?