アットウィキロゴ

とfぽy

package map;
 
import java.io.*;
 
public class pro {
 
    String[] data=new String[30000];
    int s,datanumber;
 double[] lon=new double[30000];
 double[] lat=new double[30000];
   String[] city=new String[30000];
 int[] point=new int[30000];
 int[][] delta=new int[51][51];  
 
    public static void main(String[] args) {
        pro t=new pro();
    }
    pro(){
        int sx;
 
        readx("data.csv");
    for(s=2;s<datanumber+1;s++){
        data[s]=rev_csv(data[s]);
        String[] x=data[s].split(",");
 
 
    String n1=x[1].replace("\"","");
    lat[s-1]=num(n1);
    n1=x[0].replace("\"","");;
    lon[s-1]=num(n1);
    city[s-1]=x[3];  
    }    
 
 
    datanumber=datanumber-1;
 
    double maxy=0; 
    double maxx=0;
    for(s=1;s<datanumber+1;s++){
    if(lon[s]>maxy)maxy=lon[s];  
    if(lat[s]>maxx)maxx=lat[s];   
    }
 
    double miny=maxy; 
    double minx=maxx;
    for(s=1;s<datanumber+1;s++){
    if(lon[s]<miny)miny=lon[s];  
    if(lat[s]<minx)minx=lat[s];   
    }
 
    for(s=1;s<datanumber+1;s++){
    String str="7"+city[s].substring(0,2);
    point[s]=num_int(str)-700;
    }
 
 
    for(s=1;s<datanumber+1;s++){
    int y1=(int)(50*(lon[s]-miny)/(maxy-miny));
    int x1=(int)(50*(lat[s]-minx)/(maxx-minx));
    delta[y1][x1]=point[s];
    }
 
 
 
System.out.println(maxy+","+maxx);
 System.out.println(miny+","+minx);
 
 for(s=1;s<51;s++){
 for(sx=1;sx<51;sx++){
 System.out.println("point["+s+"]["+sx+"]="+delta[s][sx]+";");
 }}
 
 
 
 
 
 
    }
       void readx(String file){
 
String str;
BufferedReader br;  
int s;
s=0;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"SJIS"));  
while((str = br.readLine()) != null) {  
s=s+1;
data[s]=str;  
}
br.close();
} catch (IOException e) {System.out.println(e);}  
 
datanumber=s;
 
} 
 
    int num_int(String str){
 
    int nx;
 
    nx=0;
 
 try{
 
    nx=Integer.parseInt(str);
 
 }catch (Exception e) {}
 
 return nx;
 
 
 
}
 
 
     double num(String str){
 
    double nx;
 
    nx=0;
 
 try{
 
    nx=Double.parseDouble(str);
 
 }catch (Exception e) {}
 
 return nx;
 
 
 
}
 
     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;
 
    }
}
最終更新:2017年03月05日 03:50