-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCSVUniqueValues.java
More file actions
34 lines (33 loc) · 1.21 KB
/
CSVUniqueValues.java
File metadata and controls
34 lines (33 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.TreeSet;
import javax.swing.JFileChooser;
public class CSVUniqueValues {
public static void main(String[]args) throws Exception{
JFileChooser chooser = new JFileChooser("");
chooser.showOpenDialog(null);
File f = new File(chooser.getSelectedFile().getPath());
FileReader fr = new FileReader(f);BufferedReader br = new BufferedReader(fr);
String headers = br.readLine();
String delim = "";
System.out.println(headers);
if(headers.contains("\",\"")) {delim = "\",\"";}
else if(headers.contains(";")) {delim = ";";}
else if(headers.contains(",")) {delim = ",";}
String [] arr = headers.split(delim);
TreeSet<String> [] tree = new TreeSet[arr.length];
for(int i = 0; i < arr.length; i++) {tree[i] = new TreeSet<String>();}
String line = br.readLine();
while(line != null) {
arr = line.split(delim);
for(int i = 0; i < arr.length; i++) {tree[i].add(arr[i]);}
line = br.readLine();
}
br.close();fr.close();
for(int i = 0; i < tree.length; i++) {
if(tree[i].toString().length() > 200) {System.out.println(tree[i].toString().substring(0, 200));}
else{System.out.println(tree[i].toString());}
}
}
}