MCPcopy Create free account
hub / github.com/CDSecLab/MJXT / Table_Gen_Entropy

Class Table_Gen_Entropy

src/test/java/Table_Gen_Entropy.java:14–64  ·  view source on GitHub ↗

This code aims to generate the tables with different entropy. For example, 'data/table1/table1_k9_j1_65536_16.csv' @Author: 杜凯 @Date: 2024/03/18/11:32 @Description:

Source from the content-addressed store, hash-verified

12 * @Description:
13 */
14public class Table_Gen_Entropy {
15
16 public static void main(String[] args) {
17 BufferedWriter buffWriter = null;
18 //entropy->repeat : 16->2^8, 14->2^6, 12->2^4
19 int entropy = 14;
20 int repeat = (int) Math.pow(2, 6);
21 try {
22 File csvFile = new File("data/table1/table1_k9_j1_65536_" + entropy + ".csv");
23 FileWriter writer = new FileWriter(csvFile, false);
24 buffWriter = new BufferedWriter(writer, 1024);
25 String title = "id,keyword0,keyword1,keyword2,keyword3,keyword4,keyword5,keyword6," +
26 "keyword7,keyword8,join-attr0\n";
27 buffWriter.write(title);
28 buffWriter.flush();
29 int counter = 0;
30 for (int i = 0; i < Math.pow(2, 8); i++) {
31 for (int j = 0; j < Math.pow(2, 8) / repeat; j++) {
32 for (int k = 0; k < repeat; k++) {
33 String csv = "table1_id_" + counter;
34 csv += "," + "table1_keyword_0_" + i;
35 csv += "," + "table1_keyword_1_" + i;
36 csv += "," + "table1_keyword_2_" + i;
37 csv += "," + "table1_keyword_3_" + i;
38 csv += "," + "table1_keyword_4_" + i;
39 csv += "," + "table1_keyword_5_" + i;
40 csv += "," + "table1_keyword_6_" + i;
41 csv += "," + "table1_keyword_7_" + i;
42 csv += "," + "table1_keyword_8_" + i;
43 csv += "," + "join_" + i + "_" + k;
44 counter++;
45 buffWriter.write(csv);
46 buffWriter.newLine();
47 buffWriter.flush();
48 }
49 }
50 }
51 } catch (Exception e) {
52 System.out.println("Exception of writing into csv.");
53 e.printStackTrace();
54 } finally {
55 try {
56 if (buffWriter != null) {
57 buffWriter.close();
58 }
59 } catch (IOException e) {
60 e.printStackTrace();
61 }
62 }
63 }
64}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected