package cn.xxxxxx.tools;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
public class LuckNumber {
public static StringBuffer sbfull=new StringBuffer();
public static void main(String[] args) throws Exception {
try {
String str[] = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };
permutation(str, 0, str.length);
FileOperation.writeTxtFile(sbfull.toString(), new File("D:\\sql1.txt"));
} catch (Error e) {
System.out.println("循环后,以占用内存:" + Runtime.getRuntime().totalMemory() / 1024 / 1024 + "M");
System.out.println("捕获到的错误:" + e);
}
}
static void swap(String[] str, int start, int end) {
String tmep = str[start];
str[start] = str[end];
str[end] = tmep;
}
static void permutation(String[] str, int start, int end) throws Exception {
if (start == end - 1) {
StringBuffer sb=new StringBuffer();
for (int i = 0; i < end; i++) {
sb.append(str[i]);
//System.out.print(str[i]);
}
String sqlstr="##$('"+sb+"', '"+(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))+"', '0', '0');";
//System.out.println(sb);
sbfull.append(sqlstr+"\n");
//String sbstr=sqlstr+"\n"+FileOperation.readTxtFile(new File("D:\\sql1.txt"));
} else {
for (int i = start; i < end; i++) {
//if (i == 0 && str[0].equals("0"))
// continue;
swap(str, start, i);
permutation(str, start + 1, end);
swap(str, start, i);
}
}
}
}
package cn.xxxxx.tools;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.RandomAccessFile;
public class FileOperation {
/**
* 创建文件
*
* @param fileName
* @return
*/
public static boolean createFile(File fileName) throws Exception {
boolean flag = false;
try {
if (!fileName.exists()) {
fileName.createNewFile();
flag = true;
}
} catch (Exception e) {
e.printStackTrace();
}
return true;
}
/**
* 读TXT文件内容
*
* @param fileName
* @return
*/
public static String readTxtFile(File fileName) throws Exception {
String result = "";
FileReader fileReader = null;
BufferedReader bufferedReader = null;
try {
fileReader = new FileReader(fileName);
bufferedReader = new BufferedReader(fileReader);
try {
String read = null;
while ((read = bufferedReader.readLine()) != null) {
result = result + read + "\r\n";
}
} catch (Exception e) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (bufferedReader != null) {
bufferedReader.close();
}
if (fileReader != null) {
fileReader.close();
}
}
//System.out.println("读取出来的文件内容是:" + "\r\n" + result);
return result;
}
public static boolean writeTxtFile(String content, File fileName) throws Exception {
RandomAccessFile mm = null;
boolean flag = false;
FileOutputStream o = null;
try {
o = new FileOutputStream(fileName);
o.write(content.getBytes("utf-8"));
o.close();
// mm=new RandomAccessFile(fileName,"rw");
// mm.writeBytes(content);
flag = true;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} finally {
if (mm != null) {
mm.close();
}
}
return flag;
}
public static void contentToTxt(String filePath, String content) {
String str = new String(); // 原有txt内容
String s1 = new String();// 内容更新
try {
File f = new File(filePath);
if (f.exists()) {
System.out.print("文件存在");
} else {
System.out.print("文件不存在");
f.createNewFile();// 不存在则创建
}
BufferedReader input = new BufferedReader(new FileReader(f));
while ((str = input.readLine()) != null) {
s1 += str + "\n";
}
System.out.println(s1);
input.close();
s1 += content;
BufferedWriter output = new BufferedWriter(new FileWriter(f));
output.write(s1);
output.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
|