アットウィキロゴ

eoe9

package neko5;
import tool.*;
import java.io.*;
 
public class pro {
 
      int s,datanumber;
    String[] data=new String[600];
  String[] delta=new String[70];
     String[][] memo=new String[70][100];
  int[][] card=new int[70][10];
  int[][] point=new int[70][100];
 
   String[][] memox=new String[70][100];
    String[] name=new String[70];
    String[] t=new String[7000];
 
    int[][] box=new int[7][7]; 
 
   int[] page=new int[7]; 
    public static void main(String[] args) {
        pro t=new pro();
    }
    pro(){
        int tr;
 
     for(tr=1;tr<337;tr++){ 
 
    readfile sub=new readfile();
   sub.makedata("data/"+tr+".txt","UTF-8");
   data=sub.data;
   datanumber=sub.datanumber;
 
   String str="";
   for(s=1;s<datanumber+1;s++){
   str=str+data[s];
   if(data[s].indexOf("<TITLE>")>-1)t[tr]=data[s];   
   }
 
 
   System.out.println(t[tr]);
 
 
 
   String[] x=str.split("p.m.-->"); 
   int sx=0; 
   for(s=1;s<x.length;s++){
   if(x[s].indexOf("</TD>")>-1)sx=sx+1;
   if(x[s].indexOf("</TD>")>-1)delta[sx]=x[s];
   }
 
   for(s=1;s<6;s++){
   delta[s]=ch(delta[s]);    
   String[] y=delta[s].split("</TD>");  
   for(sx=1;sx<7;sx++){
   memo[s][sx]="";    
   }
 
   int k=0;
   for(sx=1;sx<y.length-1;sx++){
   if(y[sx].indexOf("<TD")>-1)k=k+1;
   if(y[sx].indexOf("<TD")>-1)memo[s][k]=y[sx].replace("<BR>","△");
   if(y[sx].indexOf("<TD")>-1)System.out.println(s+","+k+","+memo[s][k]);
   }
   page[s]=k;
   }
 
 
    String str2="ROWSPAN=\"2";
    String str3="ROWSPAN=\"3";
 String str4="ROWSPAN=\"4";
    String str5="ROWSPAN=\"5";
 
 
 for(s=1;s<6;s++){
 for(sx=1;sx<page[s]+1;sx++){
 point[s][sx]=1;
 if(memo[s][sx].indexOf(str2)>-1)point[s][sx]=2;
 if(memo[s][sx].indexOf(str3)>-1)point[s][sx]=3;
   if(memo[s][sx].indexOf(str4)>-1)point[s][sx]=4;
 if(memo[s][sx].indexOf(str5)>-1)point[s][sx]=5;
 }
   }
 
 
 
 
  for(s=1;s<6;s++){
  for(sx=1;sx<7;sx++){
  box[s][sx]=0;    
  memox[s][sx]="";
  }
  }
 
 
 
  int n,m,k;
 for(n=1;n<6;n++){
 for(m=1;m<page[n]+1;m++){ 
 k=point[n][m];
 search(n,m,k);
     }}
 
 
 
 
 
 
    name[1]="NHK";
    name[2]="日本";
    name[3]="TBS";
    name[4]="フジ";
    name[5]="朝日";
    name[6]="東京";
 
        writexml("gdata/"+tr+".txt");
 
    }
 
     writeindex("ren.txt");
 
 
 
    }
 
    String ch(String w1){
 
        int p1=w1.indexOf("<TABLE");
        int p2=-1;
        p2=w1.indexOf("</TABLE",p1);
        String w2="";
        if(p2>-1)w2=w1.substring(p1,p2);
 
        String w3=w2.replace("</TD>","");
 
        w1=w1.replace(w2, w3);
 
       return w1;
 
 
 
    }
 
 
     void writexml(String file){ 
 
    int s,sx;
 
try{ 
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file))); 
 
for(s=1;s<6;s++){  
for(sx=1;sx<7;sx++){ 
pw.print("<time>"); 
pw.print(s+6); 
pw.print("</time>"); 
pw.print("<sta>"); 
pw.print(name[sx]); 
pw.print("</sta>"); 
pw.print("<tv>");
pw.print(change(memox[s][sx])); 
pw.println("</tv>");
}
}
 
 
System.out.println("ファイルに書きこみました。"); 
pw.close(); 
} catch(IOException ep){ System.out.println("入出力エラーです。"); } 
 
 
} 
 
       void writeindex(String file){ 
 
    int s,sx;
 
try{ 
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file))); 
 
for(s=1;s<337;s++){  
pw.println(t[s]);
}
 
 
System.out.println("ファイルに書きこみました。"); 
pw.close(); 
} catch(IOException ep){ System.out.println("入出力エラーです。"); } 
 
 
} 
 
    void search(int n,int m,int k){
    int sx;
        int sxs=0;
   for(sx=1;sx<7;sx++){
   int h=0;
   if(box[n][sx]==0)h=h+1;        
   if(sxs==0)h=h+1;
   if(h==2)sxs=sx;
   }
 
   if(k==1)box[n][sxs]=100;     
   if(k==2)box[n][sxs]=100;     
   if(k==2)box[n+1][sxs]=100;    
   if(k==3)box[n][sxs]=100;     
   if(k==3)box[n+1][sxs]=100; 
   if(k==3)box[n+2][sxs]=100; 
 if(k==4)box[n][sxs]=100;     
   if(k==4)box[n+1][sxs]=100; 
   if(k==4)box[n+2][sxs]=100; 
    if(k==4)box[n+3][sxs]=100; 
 
    if(k==5)box[n][sxs]=100;     
   if(k==5)box[n+1][sxs]=100; 
   if(k==5)box[n+2][sxs]=100; 
    if(k==5)box[n+3][sxs]=100; 
      if(k==5)box[n+4][sxs]=100; 
 
    memox[n][sxs]=memo[n][m];
 
 
 
 
    }
String change(String str){
 
        int n;
        for(n=1;n<11;n++){
        str=rev(str);    
        }
 
 str=str.trim();
 
        return str;
    }
 
 String rev(String str){
 
        if(str==null)str="";
 
        int p1=str.indexOf("<");
        int p2=str.indexOf(">",p1);
        String strx="";
        if(p2>-1)strx=str.substring(p1,p2+1);
        str=str.replace(strx,"");
 
        return str;
    }    
 
 
}
最終更新:2016年08月28日 23:00