簡體   English   中英

如何在Java中的txt文件中寫入特定數量的字符

[英]How to write specific number of characters in txt file in java

我想用Java編寫一個帶有隨機字符的文件。

例如文件可以包含數字,字母和特殊字符。

對於前 它最多可以有2000個字符,我希望數字6被寫入419次。

到目前為止,我所做的就是創建和寫入文件

public void createFile(){

    try{
        fileCreator = new Formatter("test.txt");
        //fileCreator = new Formatter(System.getenv("APPDATA") + "\\testFolder\\test.txt");
    }catch(Exception ex){
        System.out.println(ex);
    }
    System.out.println(fileCreator);
}

private void addToFile(){

    String uniqueUserID = jTextField1.getText();
    String uniqueCodeID = jTextField2.getText();

    fileCreator.format("%s%s%s", uniqueUserID," " ,uniqueCodeID);
    fileCreator.close();
}

這是寫的好方法還是應該以其他方式做?

您需要為數字值定義兩個范圍,以及您要打印此頻率的頻率。

int minNumber=0, maxNumber=9;
int minPrint=1, maxPrint=2000;
Random random = new Random();
int number = random.nextInt((maxNumber - minNumber) + 1);   // random between 0-9
int printTimes = random.nextInt((maxPrint - minPrint) + 1); // 1 - 2000

當您得到這個時,您只需要循環打印printTimes並打印/添加生成的數字。

因此,您可以在每次打印之前生成一個新的編號以進行打印。


給隨機字母gernerate:

  • 取所有值的字符串並選擇一個隨機索引。

     String values = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; //add az, 0-9, etc char letter = values.charAt(random.nextInt(values.length())); 
  • 取ASCII表並選擇在AZ之間生成一個隨機數,並將其解析為char。 (A = 65分鍾,Z = 90最大)請仔細看一下代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM