随机名字生成小demo源码
生活随笔
收集整理的這篇文章主要介紹了
随机名字生成小demo源码
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
根據(jù)提供的文字隨機生成指定字符的名稱,挺簡單的,一個小demo吧
源字符
?
?
?
package com.example.demo;import cn.hutool.core.util.RandomUtil;import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.util.TreeSet;/*** 隨機名字生成小demo** @author silence丶你的名字* createTime 2021-08-12-16:35*/ public class RandomName {public static void main(String[] args) throws Exception {//字數(shù)int length = 3;//生成的名稱總數(shù)量int nameSize = 1000;//源文件路徑String path = "D:\\silence\\java相關(guān)雜貨鋪\\博客解答記錄\\silence\\";//讀取文本BufferedReader reader = new BufferedReader(new FileReader(path + "常用字庫表6763個.txt"));String line;StringBuilder sb = new StringBuilder();while ((line = reader.readLine()) != null) {sb.append(line);}reader.close();String names = sb.toString();if (names.length() <= 0) {System.exit(-1);}//隨機生成名字放到treeSet 防止重復(fù)名稱TreeSet<String> treeSet = new TreeSet<>();for (int i = 0; i < nameSize; i++) {String name = RandomUtil.randomString(names, length);if (name.length() == length) {treeSet.add(name);}}//寫出System.out.println(treeSet.size() + ":個名稱");BufferedWriter writer = new BufferedWriter(new FileWriter(path + length + "個字.txt"));for (String name : treeSet) {writer.write("\t\t\t\t\t\t\t" + name);writer.newLine();writer.flush();}writer.close();} }?
?整體代碼都比較簡單。主要是讀取源文件,?然后隨機生成,再寫入新文件
讀取:用的是原生的io流,本來想用糊涂工具包封裝的,但是\r\n?特殊字符也給讀取到String里面了,就沒用。
隨機生成:?
String name = RandomUtil.randomString(names, length); 主要是糊涂工具包的一個方法,傳入源字符,和需要生成的字符個數(shù)就可以,其實用Random 通過下標去組合也行。工具類用著主要是精簡吧。寫出: BufferedWriter? 沒啥特別的,主要是想用他的newLine()?根據(jù)不同的系統(tǒng)實現(xiàn)換行
總結(jié)
以上是生活随笔為你收集整理的随机名字生成小demo源码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华夏银行小白卡年费和免年费标准:终身免年
- 下一篇: win10创建c语言文件,c – 如何在