FileTool.java
上传用户:public
上传日期:2010-01-27
资源大小:484k
文件大小:1k
源码类别:

其他游戏

开发平台:

Java

  1. package Draw;
  2. import java.io.*;
  3. public class FileTool {
  4.   private InputStream input;
  5.   private int cellx=0;
  6.   private int celly=0;
  7.   public FileTool(String filename) {
  8.     input=getClass().getResourceAsStream(filename);
  9.    InitCellXY();
  10.   }
  11.   public String getLine()throws Exception {//读取文件一行
  12.   int ch=input.read();
  13.   if(ch==-1)return null;
  14.   String temp="";
  15.   while(ch!=-1&&ch!=13){
  16.   temp+=String.valueOf((char)ch);
  17.   ch=input.read();
  18.   }
  19.    ch=input.read();
  20.   return temp;
  21.   }
  22.   private void InitCellXY(){//获取地图大小
  23.   String temp = null;
  24.   try {
  25.     temp = getLine();
  26.   }
  27.   catch (Exception ex) {
  28.   }
  29.   int i=temp.indexOf(",");
  30.   String str1=temp.substring(0,i);
  31.   String str2=temp.substring(i+1);
  32.   cellx=Integer.parseInt(str1);
  33.   celly=Integer.parseInt(str2);
  34.   }
  35.   public int getCellx() {
  36.     return cellx;
  37.   }
  38.   public int getCelly() {
  39.     return celly;
  40.   }
  41.   public int [] getMaps()throws Exception{
  42.   int maps[]=new int[cellx*celly];
  43.   for(int j=0;j<celly;j++)
  44.   {String temp=getLine();
  45.     for (int i = 0; i < cellx; i++) {
  46.     int tt=temp.indexOf(",");
  47.     String str=null;
  48.     if(tt>0)str=temp.substring(0,tt);
  49.       else
  50.     str=temp;
  51.     maps[i+cellx*j]=Integer.parseInt(str);
  52.     temp=temp.substring(tt+1);
  53.     }
  54.   }return maps;
  55.   }
  56. }