为数据挖掘小组写的一个用于造数据的小程序

最近有个数据挖掘的项目,要求在文本里面写入随机字母并且要1000W个

于是就写了个程序用来造数据并记录一下

程序写的时候遇到的问题

1 未考虑内存溢出的情况,大批量的把数据写入导致内存溢出

以后需要谨慎对待

目前完整版


package test;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

import org.apache.commons.io.FileUtils;
import org.junit.Test;

public class test {
/**
* 获取随机26个字母
* @param bit 几位字母
* @return String
*/
public String RandomWord(int bit) {
String res = "";
for (int i = 0; i < bit; i++) {
res += (char) (‘a‘ + (int) (Math.random() * 26));
}
return res;
}
/**
*
* @param bit 几位字母
* @param row 一行几个
* @param totalNums 总共多少字母(最好与ROW取整)
* @param url 输出到的文件位置
* @param spilt 字母之间的分隔符
* @return
* @throws IOException
*/
public String addWordToFile(int bit, int row, int totalNums, String url,String spilt) throws IOException{
File file = new File(url);
StringBuffer str = new StringBuffer();
for (int i = 1; i <= totalNums; i++) {
int j=(int) (Math.random() * 26);
if(i%row==1)
str.append(j+spilt);
if (i % row == 0){
str.append(RandomWord(bit) + "\r\n");
}
else
str.append(RandomWord(bit) + spilt);
}
FileWriter writer = new FileWriter(url, true);
writer.write(str.toString());
writer.close();
return str.toString();
}

@Test
public void test1() throws IOException {
addWordToFile(3, 10, 1000, "C:\\Users\\sunfan\\Desktop\\10Y.txt","\t");
}
}

为数据挖掘小组写的一个用于造数据的小程序

时间: 2024-10-05 21:04:07

为数据挖掘小组写的一个用于造数据的小程序的相关文章

『数据库』随手写了一个 跨数据库 数据迁移工具

随手写了一个 跨数据库 的 数据迁移工具:>目前支持 SQLServer,MySql,SQLite: >迁移工具 可以自动建表,且 保留 主键,自增列: >迁移工具 基于 Laura.Source  ORM框架 开发: >迁移工具 支持 崩溃恢复(重启迁移工具,将会继续 未完成的 数据迁移): >每张表一个事务(即使  表中有 >100W 的数据,也是一个事务完成): >迁移后 的 自增列 和 原数据库 保持一致: 只是展示一下,直接上图片: 操作工具: 迁移工具

Druid:一个用于大数据实时处理的开源分布式系统

Druid是一个用于大数据实时查询和分析的高容错.高性能开源分布式系统,旨在快速处理大规模的数据,并能够实现快速查询和分析.尤其是当发生代码部署.机器故障以及其他产品系统遇到宕机等情况时,Druid仍能够保持100%正常运行.创建Druid的最初意图主要是为了解决查询延迟问题,当时试图使用Hadoop来实现交互式查询分析,但是很难满足实时分析的需要.而Druid提供了以交互方式访问数据的能力,并权衡了查询的灵活性和性能而采取了特殊的存储格式. Druid功能介于PowerDrill和Dremel

一个小时快速搭建微信小程序

「小程序」这个划时代的产品发布快一周了,互联网技术人都在摩拳擦掌,跃跃欲试.可是小程序目前还在内测,首批只发放了 200 个内测资格(泪流满面).本以为没有 AppID 这个月就与小程序无缘了,庆幸的是微信这两天发布了正式版开发者工具,无需内测邀请也可以尝鲜了. 因此也就有了我与「小程序」的初体验,而我的感受只有一个字--爽! 选择哪个「小程序」Demo? 在知名同性交友网站 Github 上,「小程序」的 Demo 不少,但是大多只是简单的 API 演示,有的甚至直接把页面数据写在了 json

python(三)一个文件读写操作的小程序

我们要实现一个文件读写操作的小程序 首先我们有一个文件 我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成 xiaoNa_1.txt xiaoBing_1.txt xiaoNa_2.txt xiaoBing_2.txt 这样格式的四个文件 下面上代码: #定义一个保存文件的函数 def save_file(xiaoNa,xiaoBing,count): file_name_xiaoBing = 'xiaoBing_'+str(cou

写了一个百度网盘资源搜索程序

一.引言 古语有云:“活到老学到老”.表达出一种“生命不止,学习不止”的学习进取精神,是一种乐观的激励!作为程序员更应该如此,否则就会被淘汰.今天我所要讲的不是如何去学习,而是怎么在网上找到我们所需求的资源. 二.百度网盘搜索方法 找资源的方法有很多,如:百度,谷歌搜索.而我讲的是如何搜索“百度网盘”里面的资源. 具体方法:在搜索引擎中搜索:site:pan.baidu.com 关键词,如下图.亲测必应,谷歌可以. 三.写了一个程序 为了自己搜索方便,索性写了一个程序去爬取必应的搜索结果,如下图

写了一个常规性生成merge 的小脚本

现在使用数据库来写存储过程,动不动参数就会用到xml ,当然罗,优势也很明显,参数相对固定,而且灵活,如果要修改或者什么的,中间接口层也不需要做变化,只需要修改封装的存储过程以及程序传参就ok了. 随着时间慢慢过,有时候就有一个存储过程,一个xml 来应对整个表的新增,修改,删除的情况了.而对于这个情况,我个人比较喜欢使用 Merge关键字来处理.但是如果表里面的列很多,那么复制黏贴啊之类的机械动作就会很多,而且没有什么价值.所以我就写了一个小脚本,应对了使用xml 来做表的增删改的作用 首先我

一个unix时间戳转换的小程序

长期查看监控数据, 监控数据的时间戳格式是标准的unix时间戳, 查看费劲, 于是乎自己写了一个小程序 代码如下 #!/bin/env python #coding:utf8 #unix时间戳转换 import sys, time, os, re def com_judge():     '''     @判断执行程序是否后跟参数     '''     com_count = len(sys.argv)     if com_count == 2:         content = sys.

用python3血一个输入用户信息的小程序

今天写一个输入信息的小程序,信息包括用户姓名,key,电话号码,最后形成一个表格的形式 1 s='' 2 while True: 3 temp='{0}\t{1}\t{0}\n' 4 v1=input('name:') 5 v2=input('key:') 6 v3=input('phone:') 7 v=temp.format(v1,v2,v3) 8 s += v 9 Q = input("Enter q to quit the pro!") 10 if Q.lower() == '

Java Date类和Calendar类的一个控制台打印日期的小程序

Java Date类和Calendar类的一个打印日期的小程序,可以直接用. package com.boy.Idate.calendar; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 控制台可视化日历 * @author 田硕 */ public class VisualCalendar {