アットウィキロゴ

SCVsyori

package bra;
 
import tool.*;
import java.io.*;
import java.io.File;
 
public class pro {
 
    int s,datanumber;
    String[] data=new String[5000];
    String[][] v=new String[500][100];
 
       String[] credit=new String[100];
       String[] topic=new String[100];
    String[] index=new String[500];
    String[] subindex=new String[500]; 
    double[][] point=new double[100][100];
    int number;
    String date;
 
    public static void main(String[] args) {
        pro test=new pro();
    }
 
    pro(){
 
        int q=0;
 
        File cc=new File("data");
        String[] cx=cc.list();
        int mx;
 
        for(mx=0;mx<cx.length;mx++){
 
            readfile sub=new readfile();
        sub.makedata("data/"+cx[mx],"UTF-8");
        data=sub.data;
        datanumber=sub.datanumber;
 
 
        int delta;
        for(s=1;s<datanumber+1;s++){
        for(delta=1;delta<51;delta++){ 
        camma(s);  
        }
        }
 
 
 
 for(s=1;s<datanumber+1;s++){
       data[s]=rev_csv(data[s]);   
 }
 
 
  System.out.println("b");
 
      int sx;
      number=0;
   for(s=1;s<datanumber+1;s++){
 
     for(sx=0;sx<100;sx++){
      v[s][sx]=""; 
     }}
 
      for(s=1;s<datanumber+1;s++){
     String[] x=data[s].split(",");
 
     for(sx=0;sx<x.length;sx++){
      v[s][sx]=x[sx]; 
     }
  if(x.length>number)number=x.length;
  }
 
 
 
      date=v[1][0];
 
System.out.println(date);
 
for(s=1;s<number;s++){ 
credit[s]="";    
}
 
for(s=3;s<number;s++){   
credit[s]=v[3][s];
topic[s]=v[4][s];
if(credit[s].length()<1)credit[s]=credit[s-1];
 }
 
for(s=5;s<datanumber+1;s++){  
index[s]="";    
}
 
for(s=6;s<datanumber+1;s++){   
index[s]=v[s][0];
subindex[s]=v[s][2];
if(index[s].length()<1)index[s]=index[s-1];
}
 
   int h=0;
if(date.indexOf("第1表")>-1)h=h+1;
if(h==1){
 
    q=q+1;
 
      writexml("gdata/"+q+".txt");
}
 
 
        }
 
}
 
     void writexml(String file){ 
 
    int s,sx;
 
try{ 
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file))); 
 
for(s=6;s<datanumber+1;s++){  
for(sx=3;sx<number;sx++){  
pw.print("<date>"); 
pw.print(date); 
pw.print("</date>");
pw.print("<index>"); 
pw.print(index[s]); 
pw.print("</index>");
pw.print("<subindex>"); 
pw.print(subindex[s]); 
pw.print("</subindex>");
pw.print("<credit>");
pw.print(credit[sx]);
pw.print("</credit>");
pw.print("<subcredit>");
pw.print(topic[sx]);
pw.print("</subcredit>");
pw.print("<value>");
pw.print(v[s][sx]); 
pw.println("</value>");
}
}
 
 
System.out.println("ファイルに書きこみました。"); 
pw.close(); 
} catch(IOException ep){ System.out.println("入出力エラーです。"); } 
 
 
} 
 
 
 
    void camma(int s){
        int k=0;
        if(count(data[s])<50)k=100;
 
        if(k>50)data[s]=data[s]+data[s+1];
        int sx;
        for(sx=s+1;sx<datanumber+1;sx++){
        if(k>50)data[sx]=data[sx+1];    
        }
        if(k>50)datanumber=datanumber-1;
 
 
    }
 
     String rev_csv(String str){
 
        String str5=str;
        int px=str5.indexOf("\"");
 
 
 
        while(px>-1){
       str5=rev(str5);
       px=str5.indexOf("\"");   
        }
        return str5;
    }
 
    String rev(String str){
 
        int p1=str.indexOf("\"");
        int p2=str.indexOf("\"",p1+1);
 
     String str1=str.substring(0,p1);   
        String str2=str.substring(p1+1,p2);  
        String str3=str.substring(p2+1,str.length());
        str2=str2.replace(",","");
 
        return str1+str2+str3;
 
    }
 
 
 
 
    int count(String str){
        int c=0;
        int p1=str.indexOf("\"");
        if(p1>-1)c=1; 
        while(p1>-1){
            p1=str.indexOf("\"",p1+1);
        if(p1>-1)c=c+1;    
        }
       int c1=c/2;
       int z=0;
       if(2*c1==c)z=100;
 
        return z;
    }
 
 
 
 
}
 
最終更新:2016年05月21日 07:45