File: GetUniquePrefixes.java

package info (click to toggle)
bbmap 39.20%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 26,024 kB
  • sloc: java: 312,743; sh: 18,099; python: 5,247; ansic: 2,074; perl: 96; makefile: 39; xml: 38
file content (40 lines) | stat: -rwxr-xr-x 841 bytes parent folder | download | duplicates (4)
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
35
36
37
38
39
40
package driver;

import java.util.HashSet;

import fileIO.TextFile;

public class GetUniquePrefixes {
	
	public static void main(String[] args){
		
		
		String fname=args[0];
		int prefix=Integer.parseInt(args[1]);
		TextFile tf=new TextFile(fname);
		
		HashSet<String> set=new HashSet<String>();
		
		String header=null;
		StringBuilder sequence=new StringBuilder();
		for(String line=tf.nextLine(); line!=null; line=tf.nextLine()){
			if(line.startsWith(">")){
				if(sequence.length()>0){
					if(sequence.length()>prefix){sequence.setLength(prefix);}
					String s=sequence.toString();
					if(set.contains(s)){}
					else{
						set.add(s);
						System.out.println(header+"\n"+s);
					}
				}
				sequence.setLength(0);
				header=line;
			}else{
				sequence.append(line);
			}
		}
		
	}
	
}