アットウィキロゴ

でーーー

package wage;
 
 
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.File;
 
public class pro {
 
    String[] name=new String[1000];
int number,s;  
 
String[][] mat=new String[500][200]; 
int fastline,lastline,prefline;
 String[] credit=new String[200];
 String[] age=new String[300];
 String[] sex=new String[300];
 String[] school=new String[300];
     String[] size=new String[300];
 int tr;
 int creditx,credity;
int maxx,maxy;
 
 
String bus,nen;
 
 
    public static void main(String[] args) {
        pro te=new pro();
    }
    pro(){
 
    int n=0;
 
 
File ff=new File("data");        
String[] f=ff.list();
int page;
 
for(page=0;page<f.length;page++){
 
 
    nen=f[page];
 
    nen=nen.replace("h","");
 
    nen=nen.substring(0,2);
 
 
        namex sub=new namex();
        sub.makedata("data/"+f[page]);
        name=sub.name;
        number=sub.number;
 
   System.out.println(number);
 
 
 
 
   maxx=200;
   maxy=400;
 
   for(tr=0;tr<number;tr++){
 
   readxls sub2=new readxls();
    sub2.maxx=maxx;
    sub2.maxy=maxy;
    sub2.makedata("data/"+f[page],tr);
    mat=sub2.mat;
 
 
    bus=name[tr];
 
           bus=bus.replace("・","");
           bus=bus.replace(",","");
           bus=bus.replace(",","");
 
             bus=rev(bus);
         bus=bus.replace("C","");
         bus=bus.replace("D","");
         bus=bus.replace("F","");
         bus=bus.replace("E","");
         bus=bus.replace("G","");
         bus=bus.replace("I","");
         bus=bus.replace("J","");
         bus=bus.replace("K","");
         bus=bus.replace("H","");
         bus=bus.replace("L","");
         bus=bus.replace("M","");
         bus=bus.replace("N","");
         bus=bus.replace("O","");
         bus=bus.replace("P","");
         bus=bus.replace("Q","");
         bus=bus.replace("R","");
            bus=bus.replace("R","");
            bus=bus.replace("T","");
         bus=bus.replace(" ","");
            bus=bus.replace(" ","");
 
writehtml("ren.html");    
 
int sx,h,indexline;
indexline=0;
fastline=0;
for(sx=1;sx<11;sx++){
for(s=1;s<50;s++){
h=0;
if(mat[s][sx].indexOf("歳")>-1)h=h+1;    
if(mat[s+1][sx].indexOf("~")>-1)h=h+1;
if(fastline==0)h=h+1;
if(h==3)indexline=sx;
if(h==3)fastline=s-1;
}    
}    
 
 
lastline=0;
for(s=fastline+1;s<maxy;s++){
h=0;
if(mat[s][indexline].indexOf("~")>-1)lastline=s;
}    
 
System.out.println("a"+lastline);
 
 
int creditline=0;
for(s=1;s<fastline;s++){
for(sx=indexline;sx<maxx-5;sx++){
h=0;
if(mat[s][sx].indexOf("年")>-1)h=h+1;
if(mat[s][sx+1].indexOf("勤")>-1)h=h+1;
if(creditline==0)h=h+1;
if(h==3)creditline=s;
if(h==3)creditx=sx;
}    
}
 
credity=creditx+31;
 
age[fastline]="合計";
for(s=fastline+1;s<lastline+1;s++){
age[s]=mat[s][indexline];    
age[s]=age[s].replace("\n","");
}
 
for(s=fastline+1;s<lastline+1;s++){    
age[s]=age[s].replace(" ","");
age[s]=age[s].replace("   ","");
}
 
for(s=fastline+1;s<lastline+1;s++){   
sex[s]="";   
}
 
 
sex[fastline]="合計";
for(s=fastline+1;s<lastline+1;s++){    
if(age[s].indexOf("男")>-1)sex[s]="男";
if(age[s].indexOf("女")>-1)sex[s]="女";
if(sex[s].length()<1)sex[s]=sex[s-1];
 System.out.println(age[s]+","+school[s]);
 
}
 
 
 
for(s=fastline+1;s<lastline+1;s++){   
 school[s]="";   
}
 
school[fastline]="合計";
for(s=fastline+1;s<lastline+1;s++){    
if(age[s].indexOf("短大")>-1)school[s]="短大";
if(age[s].indexOf("大学")>-1)school[s]="大学";
if(age[s].indexOf("高校")>-1)school[s]="高校";
if(age[s].indexOf("中学")>-1)school[s]="中学";
if(age[s].indexOf("計")>-1)school[s]="合計";
if(school[s].length()<1)school[s]=school[s-1];
 System.out.println(age[s]+","+school[s]);
 
}
 
 
for(sx=creditx;sx<credity+1;sx++){
credit[sx]=mat[creditline][sx]+mat[creditline+1][sx];
credit[sx]=credit[sx].replace("\n","");
credit[sx]=credit[sx].replace(" ","");
credit[sx]=credit[sx].replace(" ","");
}
 
for(sx=creditx+1;sx<credity+1;sx++){
size[sx]="";    
}
 
size[creditx]="合計";
for(sx=creditx+1;sx<credity+1;sx++){
h=0;
if(credit[sx].indexOf("年齢")>-1)h=h+1;
if(size[sx-1].equals("合計"))h=h+1;
if(h==2)size[sx]="1000人以上";
h=0;
if(credit[sx].indexOf("年齢")>-1)h=h+1;
if(size[sx-1].equals("1000人以上"))h=h+1;
if(h==2)size[sx]="1000人以下";
h=0;
if(credit[sx].indexOf("年齢")>-1)h=h+1;
if(size[sx-1].equals("1000人以下"))h=h+1;
if(h==2)size[sx]="100人以下";
if(size[sx].length()<1)size[sx]=size[sx-1];
}
 
 
 
System.out.println("a"+fastline);
System.out.println("b"+lastline);
System.out.println("c"+creditx);
System.out.println("d"+credity);
System.out.println(creditline);
 
 
n=n+1;
 
writexml("gdata/"+n+".txt");
 
   }
 
}
 
 
 
 
 
 
 
}   
 
 String rev(String va) {
    StringBuilder sb = new StringBuilder(va);
 
    for (int i = 0;i< sb.length(); i++) {
        int c = (int) sb.charAt(i);
        if ((c >= 0xFF10 && c <= 0xFF19) || (c >= 0xFF21 && c <= 0xFF3A) || (c >= 0xFF41 && c <= 0xFF5A)) {
            sb.setCharAt(i, (char) (c - 0xFEE0));
        }
    }
    va = sb.toString();
    return va;
}
 
 
    void writexml(String file){ 
 
    int s,sx;
 
try{ 
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file))); 
 
for(s=fastline;s<lastline+1;s++){   
for(sx=creditx;sx<credity+1;sx++){
pw.print("<year>"); 
pw.print(nen); 
pw.print("</year>");
pw.print("<bus>"); 
pw.print(bus); 
pw.print("</bus>");
pw.print("<sex>");
pw.print(sex[s]);
pw.print("</sex>");
pw.print("<school>");
pw.print(school[s]);
pw.print("</school>");
pw.print("<age>");
pw.print(age[s]);
pw.print("</age>");
pw.print("<size>");
pw.print(size[sx]);
pw.print("</size>");
pw.print("<credit>");
pw.print(credit[sx]);
pw.print("</credit>");
pw.print("<value>");
pw.print(mat[s][sx]); 
pw.println("</value>");
}
}
 
System.out.println("ファイルに書きこみました。"); 
pw.close(); 
} catch(IOException ep){ System.out.println("入出力エラーです。"); } 
 
 
} 
 
 
 
 
 
 
 
 
 
 
void writehtml(String file){ 
 
    int s,sx;
 
try{ 
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file))); 
 
 
pw.println("<html>");
 
pw.println("<head>");
pw.println("<meta charset=\"UTF-8\">");
pw.println("</head>");
pw.println("<body>");
pw.print("<table rules=\"all\">"); 
pw.print("<tr>"); 
pw.print("<td>"); 
pw.print(""); 
pw.print("</td>"); 
for(sx=1;sx<maxx+1;sx++){ 
pw.print("<th>"); 
pw.print(sx); 
pw.print("</th>"); 
} 
pw.println("</tr>"); 
for(s=1;s<maxy+1;s++){ 
pw.print("<tr>"); 
pw.print("<th>"); 
pw.print(s); 
pw.print("</th>"); 
for(sx=1;sx<maxx+1;sx++){ 
pw.print("<td>"); 
pw.print(mat[s][sx]); 
pw.print("</td>"); 
} 
pw.println("</tr>"); 
}   
pw.println("</table>"); 
pw.println("</body>");
pw.println("</html>");
 
System.out.println("ファイルに書きこみました。"); 
pw.close(); 
} catch(IOException ep){ System.out.println("入出力エラーです。"); } 
 
 
} 
 
 
 
}
 
 
 
 
package wage;
 
 
import java.io.*;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.*;
 
public class namex{
 
String[] name=new String[1000];
int number;    
 
 
void makedata(String file){   
 
 
 
      try{
 
  int s;
 
          FileInputStream is = new FileInputStream(file);
     Workbook wb = new HSSFWorkbook(is);
     number=wb.getNumberOfSheets();
 
     for(s=0;s<number;s++){
     name[s]=wb.getSheetName(s);
     }        
 
 
 
 
 
  } catch (Exception e) {e.printStackTrace();}
 
 
 
 
 
 
 
 }
}
 
 
 
 
 
 
 
 package wage;
 
 
import java.io.*;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.*;
 
public class readxls {
 
int maxx,maxy;
Cell cc;
String[][] mat=new String[50000][500]; 
int[][] color= new int[50000][500];
 
void makedata(String file,int number){   
 
 
 
      try{
 
     FileInputStream is = new FileInputStream(file);
     Workbook wb = new HSSFWorkbook(is);
      Sheet sh = wb.getSheetAt(number);
 
      int s,sx,j,h;
      String bb;
 
 
      CellStyle style = wb.createCellStyle();
 
          for(s=1;s<maxy+1;s++){
           for(sx=1;sx<maxx+1;sx++){
          mat[s][sx]="";
           }}
 
  for(s=1;s<maxy+1;s++){
  Row row = sh.getRow(s-1);
  j=0;
  if(row==null)j=100;
  if(j<50){
  for(sx=1;sx<maxx+1;sx++){  
  cc = row.getCell(sx-1);
  h=0;
  if(cc==null)h=100;
  if(h<50){
  int type =cc.getCellType();
   bb="";
  if(type==1)bb=cc.getStringCellValue();
  if(type==0)bb=""+cc.getNumericCellValue();  
  mat[s][sx]=bb;
  }
  }
  }
  }
 
 
 
 
 
  } catch (Exception e) {e.printStackTrace();}
 
 
 
 
 
 
 
 }
}
 
最終更新:2016年06月11日 18:42