设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7200|回复: 1

[原创] 发一个读取TXT文件数据的程序代码

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
; O% B; V* P; i2 Wimport java.io.BufferedReader;( S9 s. N9 u! J6 b5 F4 b
import java.io.FileInputStream;
. h* _6 W- P6 y; h8 g$ Vimport java.io.FileNotFoundException;5 x6 F4 ~" P+ {" n8 Z  i, @
import java.io.IOException;
1 ]# q4 n+ m" i3 O* g, @import java.io.InputStreamReader;; {9 ~& G1 v- N' c
import java.io.UnsupportedEncodingException;
# {, q. t5 f) ^9 bimport java.util.StringTokenizer;
8 ^5 v, o9 X. E2 t0 Ypublic class TXTReader {$ l" f& n) S1 g. ~6 i. ]/ A
protected String matrix[][];3 c; b% U0 p1 ^7 w0 z% F5 k4 [
protected int xSize;
) m  `( W* u4 d1 \5 h protected int ySize;! O+ q  ~6 V! x4 _7 m+ W1 E
public TXTReader(String sugarFile) {% V: D5 z( S; ]8 T. z
  java.io.InputStream stream = null;
7 `; B8 h( X- X; \7 F  try {8 d. c5 @  k/ e' N
   stream = new FileInputStream(sugarFile);
6 z3 m, x$ e* l/ r% C  f+ O3 P  } catch (FileNotFoundException e) {2 T" e. @, l3 \
   e.printStackTrace();
; e6 n. ?; E* n5 C: H/ O/ h  }
& ~0 \9 Q2 i& @  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
0 A0 d- Z5 g0 H! a; s5 {# a3 v  init(in);
* }/ U4 S( _  i6 ]% U" H3 v }
) y8 ?0 W2 }! J0 u  r) P private void init(BufferedReader in) {
0 _. V6 z6 g* h, m  try {1 t, Q0 p. K2 M) y9 l' ^
   String str = in.readLine();$ y: d- J; ~! P- O! H2 a2 [# i
   if (!str.equals("b2")) {! I3 E& ]( W0 h
    throw new UnsupportedEncodingException(
1 q4 l2 \' X+ d2 _3 {3 ]8 ~      "File is not in TXT ascii format");) W+ K* L$ [; B9 x7 B' g; B% ^
   }
- }6 r( c/ t# F   str = in.readLine();. p5 z+ [2 f3 X$ B- A
   String tem[] = str.split("[\\t\\s]+");' C8 i; d9 t3 b
   xSize = Integer.valueOf(tem[0]).intValue();6 `+ m6 a$ P( v! e) a4 n
   ySize = Integer.valueOf(tem[1]).intValue();
5 j8 `' X- \4 _/ w8 [   matrix = new String[xSize][ySize];4 E0 N/ M: X% s* Y
   int i = 0;' k: k* J( \% ~( q, P- }  ?
   str = "";
1 V7 }9 o, K' n# B, F   String line = in.readLine();
' @: x6 r6 M4 ~   while (line != null) {
/ g  p* ^' }- `: l( U* j6 e# s    String temp[] = line.split("[\\t\\s]+");( b8 Y! `6 ~7 l5 C4 m( e
    line = in.readLine();
9 L( \' {6 t9 |  ]$ j/ k+ n/ J    for (int j = 0; j < ySize; j++) {( {- o  q* u* M' G" X2 H) T7 E
     matrix[i][j] = temp[j];
& _& V+ q- \3 y% |& s6 ]2 @    }
  H; O% W) O1 ]4 o    i++;8 _5 V0 s& m6 m- w4 P
   }
) ^2 S$ O& N6 V+ q1 T   in.close();
( t) f* F/ h1 r+ r0 U  } catch (IOException ex) {9 \1 i  ?  H" a7 B- F7 N
   System.out.println("Error Reading file");
; @; C, l9 L: ~+ Q7 x4 d3 Y" m1 `' l   ex.printStackTrace();
5 d% ]8 Q2 C# r( ~$ N& \/ ~   System.exit(0);/ |/ C; c' X+ v' V
  }$ D7 _+ I" P' ^
}  ]7 ^/ u& j7 ^5 j
public String[][] getMatrix() {* k3 \$ U1 m2 M8 p
  return matrix;$ C0 F" l- ^+ Z( o
}
5 }2 a) V# Y- j3 A  H}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-2-27 15:02 , Processed in 0.014898 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表