设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6998|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;  C  b- F# q/ s& }, C
import java.io.BufferedReader;
! y+ v. I. u5 Q; dimport java.io.FileInputStream;
' u) j$ `% H" \, P* V' u  c6 Jimport java.io.FileNotFoundException;
$ B5 h' C5 W! C  eimport java.io.IOException;
- Q; D/ Y% [% H' C  }import java.io.InputStreamReader;
6 P0 Y. p$ x8 Q: b% ^& _import java.io.UnsupportedEncodingException;1 ?) A& e1 \: N/ Z% S) H4 [6 r
import java.util.StringTokenizer;' W2 ?: K) A- B$ m7 }( p
public class TXTReader {
) i9 j1 H6 Q8 d/ N1 Q1 h protected String matrix[][];
4 B0 F" @% _7 y7 G* P5 l4 n2 _ protected int xSize;
8 o/ t% W" u8 f* q* |) f" h+ n protected int ySize;3 G& t8 Q0 Y! b" H9 \
public TXTReader(String sugarFile) {
3 O# g" x! I2 Q8 K4 P  java.io.InputStream stream = null;
6 M. T5 b& A1 l; K$ I# T  try {
1 G( x% i" d. _8 o3 B   stream = new FileInputStream(sugarFile);  ~5 ?( H; F0 p2 i( c! S
  } catch (FileNotFoundException e) {7 g/ g; K/ Y1 R( \
   e.printStackTrace();
* Q" J- n1 A; [  }8 Y5 V% b0 R. `  k/ Q4 v2 \" t* a
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
8 ~- Q7 Y$ a% |& M  init(in);
& C7 R; M/ ~5 q4 r' g( B }
1 `8 T0 |4 g) ^8 n; R private void init(BufferedReader in) {
- V: N5 z) v5 D4 y5 q  try {3 a1 P, W+ O  a8 H' X  D3 \
   String str = in.readLine();
# j" J& I, ?$ w% j* m2 c& M/ t   if (!str.equals("b2")) {
! f* @1 G0 l) G5 {9 ?! _8 @    throw new UnsupportedEncodingException(
+ F; @: }' T/ v2 Q% [# k/ V5 A      "File is not in TXT ascii format");4 ^, r' D' U' }* S
   }, ~" H9 O$ F8 ~# W; \3 Y
   str = in.readLine();2 Y' X+ h  B6 t: G. Z0 _
   String tem[] = str.split("[\\t\\s]+");
2 w3 C4 o/ W+ L# m5 S4 u   xSize = Integer.valueOf(tem[0]).intValue();5 ]: b; o5 X, @" t" X4 f8 p
   ySize = Integer.valueOf(tem[1]).intValue();
* B! O" O; A, \* q   matrix = new String[xSize][ySize];
3 e2 _5 u' C, \$ [7 L   int i = 0;* o" Z4 g. f) M4 Z+ q& ]
   str = "";
" v$ F  Z* W+ D! ~2 l4 ]   String line = in.readLine();( L$ h0 O  e' o2 k
   while (line != null) {
; L7 S" R! i, ^4 j  F  E    String temp[] = line.split("[\\t\\s]+");
8 j$ l; n6 p6 ]" q" z: t3 [( p    line = in.readLine();
5 r9 }4 K( A7 I: X0 p( [) E    for (int j = 0; j < ySize; j++) {
, ~$ a* |1 x/ W7 W     matrix[i][j] = temp[j];, m+ [/ B; c  d& w2 }8 n% b
    }
2 m0 ~/ g9 g2 L3 q2 H    i++;
1 i/ L# U. o; \   }# A: U' Y- O" i/ x: S: C2 R0 p
   in.close();8 q- n( Q1 T# x9 s/ y& I" V
  } catch (IOException ex) {; z& H' h$ D! y3 {6 A- P
   System.out.println("Error Reading file");) o! x7 B" Z) v; ]
   ex.printStackTrace();/ y  U! ]; U( d, {( q  ^5 s
   System.exit(0);
$ ~. ^4 L, \5 _7 a" d, c. W  x  }* y) B  G% B- P
}
1 q) I2 P+ s5 T' v$ X$ T public String[][] getMatrix() {
7 ^7 g$ G- b$ X3 e% M  return matrix;! F' ~/ R! [" t8 @; Z/ t% j
}
( e+ B; ]3 I4 x+ J7 H" L7 f6 w}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-14 21:54 , Processed in 0.016928 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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