package gencrawler; import java.io.*; import java.io.File; /** * Title: GeneCrawler * Description: * Copyright: Copyright (c) 2001 * Company: * @author Niels Halama * @version 1.0 */ public class Untitled1 { public Untitled1() { } public static void main(String[] args) { Untitled1 untitled11 = new Untitled1(); String FileName = new String("gencave.txt"); String Sequence = new String(""); boolean TRUE = true; String IsIt = new String(); int i=0; // Start: i int max=500; // Ende: max File file = new File (FileName); if (file.exists()!=TRUE) {System.out.println("Input Error!");} try { // Open a file of the current name. int size = (int)file.length(); int chars_read = 0; FileReader in = new FileReader(file); char[] data = new char[size]; char[] TempData = new char[size]; // Read all available characters into the buffer. while(in.ready()) { chars_read += in.read(data, chars_read, size - chars_read); //} } in.close(); Sequence = new String(data, 0, chars_read); // in.read(); // out.close(); } catch (IOException e) { System.out.println("Error"); //setText("Error saving "+NewFileName); } int max_length1=Sequence.length(); char sub; char sub1; char sub2; int pos = 0; // *** Add 0 to achieve optimal positioning ! //**** Pattern A********** int check1 = 3; int check2 = 5; int check3 = 10; int check4 = 25; int check5 = 63; //c int check6 = 67; //c und g int check7 = 74; //c int check7a = 97; //a int check8 = 136; int check9 = 197; int check10 = 207; //***** Pattern B********** int check11 = 14; int check12 = 18; int check13 = 58; int check14 = 68; int check15 = 122; int check16 = 139; int check17 = 149; int check18 = 209; int check19 = 126; //*********** Pattern C******** int check20 = 12; int check21 = 15; int check22 = 22; int check23 = 24; int check24 = 173; int check25 = 184; int check26 = 188; int current = 0; int counterTAG = 0; int index = 0; StringBuffer Workspace = new StringBuffer(Sequence); while (Sequence.indexOf("tag", pos+1) != -1) { pos = Sequence.indexOf("tag", pos +1); System.out.println(pos); if (pos > 211) { // if (Sequence.charAt(pos-check1) == 'g') {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check1) + " check g"); if ( Sequence.charAt(pos-check2) == 'g') {counterTAG = counterTAG+10;} System.out.println(Sequence.charAt(pos-check2) + " check g"); if ( Sequence.charAt(pos-check3) == 'g' || Sequence.charAt(pos-check3) == 'c' ) {counterTAG = counterTAG+20;} System.out.println(Sequence.charAt(pos-check3) + " check g/c"); if ( Sequence.charAt(pos-check4) == 'g') {counterTAG = counterTAG+10;} System.out.println(Sequence.charAt(pos-check4) + " check g"); // if ( Sequence.charAt(pos-check5) == 'c') {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check5) + " check c"); if ( Sequence.charAt(pos-check6) == 'g' || Sequence.charAt(pos-check6) == 'c' ) {counterTAG = counterTAG+1;} System.out.println(Sequence.charAt(pos-check6) + " check g/c"); // if ( Sequence.charAt(pos-check7) == 'c') {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check7) + " check c"); // if ( Sequence.charAt(pos-check7a) == 'a') {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check7a) + " check a"); // if ( Sequence.charAt(pos-check8) == 'g' || Sequence.charAt(pos-check8) == 'c' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check8) + " check g/c"); // if ( Sequence.charAt(pos-check9) == 'c') {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check9) + " check c"); // if ( Sequence.charAt(pos-check10) == 'g' || Sequence.charAt(pos-check10) == 'c' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check10) + " check g/c"); // if ( Sequence.charAt(pos-check11) == 'g' || Sequence.charAt(pos-check11) == 'a' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check11) + " check g/a"); // if ( Sequence.charAt(pos-check12) == 'g' || Sequence.charAt(pos-check12) == 'c' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check12) + " check g/c"); // if ( Sequence.charAt(pos-check13) == 'g' || Sequence.charAt(pos-check13) == 'a' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check13) + " check g/a"); // if ( Sequence.charAt(pos-check14) == 'g' || Sequence.charAt(pos-check14) == 'c' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check14) + " check g/c"); // if ( Sequence.charAt(pos-check15) == 'g' || Sequence.charAt(pos-check15) == 't' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check15) + " check g/t"); // if ( Sequence.charAt(pos-check16) == 'a' || Sequence.charAt(pos-check16) == 'c' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check16) + " check a/c"); // if ( Sequence.charAt(pos-check17) == 'a' || Sequence.charAt(pos-check17) == 'g' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check17) + " check a/g"); // if ( Sequence.charAt(pos-check18) == 'c' || Sequence.charAt(pos-check18) == 'g' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check18) + " check c/g"); // if ( Sequence.charAt(pos-check19) == 'c' || Sequence.charAt(pos-check19) == 't' ) {counterTAG = counterTAG+1;} // System.out.println(Sequence.charAt(pos-check19) + " check c/t"); if (Sequence.charAt(pos-check20) == 'a') {counterTAG = counterTAG+1;} System.out.println(Sequence.charAt(pos-check20) + " check a"); if (Sequence.charAt(pos-check21) == 'g') {counterTAG = counterTAG+5;} System.out.println(Sequence.charAt(pos-check21) + " check g"); if (Sequence.charAt(pos-check22) == 'g') {counterTAG = counterTAG+5;} System.out.println(Sequence.charAt(pos-check22) + " check g"); if (Sequence.charAt(pos-check23) == 'c') {counterTAG = counterTAG+1;} System.out.println(Sequence.charAt(pos-check23) + " check c"); if (Sequence.charAt(pos-check24) == 'g') {counterTAG = counterTAG+2;} System.out.println(Sequence.charAt(pos-check24) + " check g"); if (Sequence.charAt(pos-check25) == 'g') {counterTAG = counterTAG+2;} System.out.println(Sequence.charAt(pos-check25) + " check g"); if (Sequence.charAt(pos-check26) == 'c') {counterTAG = counterTAG+2;} System.out.println(Sequence.charAt(pos-check26) + " check c"); System.out.println(counterTAG + " / 26"); if ( counterTAG == 0) { System.out.println("Found Genestart... at " + pos); index = pos; System.out.println("Sequence: "); System.out.print(Sequence.charAt(index)); System.out.print(Sequence.charAt(index+1)); System.out.print(Sequence.charAt(index+2)); System.out.print(Sequence.charAt(index+3)); System.out.print(Sequence.charAt(index+5) + "\n"); } counterTAG = 0; } } } }