设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5571|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
5 C# t" x( L8 g) {) ~' W5 `import java.io.BufferedReader;9 c# b6 I; \: z9 Y  {. ]/ b
import java.io.FileInputStream;2 J& ?$ v* y! s2 H+ N9 u0 p
import java.io.FileNotFoundException;
. V% M7 a& q) Timport java.io.IOException;
. {" ]9 z/ r2 b; B' T0 wimport java.io.InputStreamReader;% e. S" x4 V$ |% ?
import java.io.UnsupportedEncodingException;
5 b) a; Q* Q) K- `  V) \" `import java.util.StringTokenizer;
* A0 X1 `. [5 }; hpublic class TXTReader {6 b* \% J8 r7 N5 ^7 D- n  M
protected String matrix[][];
2 v5 o* q% l# q; {. F protected int xSize;
5 j" f1 R8 R6 [* o protected int ySize;3 R3 P( o  }; D/ O; L
public TXTReader(String sugarFile) {
& P8 v$ n# [3 v" T1 n6 _. z  java.io.InputStream stream = null;$ f8 x& g/ ~6 M' s
  try {
+ @! i/ Q+ d! C0 }0 n" Y* F& Q/ B4 D   stream = new FileInputStream(sugarFile);
9 A5 J2 S9 i9 r4 Q( X  } catch (FileNotFoundException e) {% x/ ~7 i( A0 v  x6 w
   e.printStackTrace();' n; y  }8 {. f, [
  }6 f1 ?/ R) w: c% D6 {: F1 v
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
- _% C& N0 P& b/ I% b  init(in);* x7 y- z! d: v% ~- w
}5 \0 D6 ?) V: g) D% _9 f
private void init(BufferedReader in) {  s  t/ d& w3 u* Y( W$ |
  try {* R' X5 _3 n+ r3 W& k
   String str = in.readLine();
7 V, p+ e/ n6 \; c' h5 W+ W5 U   if (!str.equals("b2")) {
" o1 ]4 P, D& H& A- j9 s  V% ]    throw new UnsupportedEncodingException(
7 `' c3 P4 ^1 p/ Y" l  R' i5 A& y" M      "File is not in TXT ascii format");
6 j+ |& z" g( v- i% `   }/ i& V# a  @5 {+ X( f2 _2 x) ?8 w
   str = in.readLine();6 c% R9 e0 `, b1 h( D  H
   String tem[] = str.split("[\\t\\s]+");
6 }, C, X! ?' Y4 c6 T9 {   xSize = Integer.valueOf(tem[0]).intValue();" c2 G- Z* {% F
   ySize = Integer.valueOf(tem[1]).intValue();$ |0 P. C/ Z7 V
   matrix = new String[xSize][ySize];' e+ @$ A, [* O4 V9 K
   int i = 0;" O- U5 N9 h" B! c' J8 X+ k7 |
   str = "";: x; X9 A; y8 e
   String line = in.readLine();0 [. V" X2 e) v2 {/ |
   while (line != null) {" S' [; m6 I! t/ ?$ Q0 f- \1 o
    String temp[] = line.split("[\\t\\s]+");
! r& l6 {0 ^8 p4 U    line = in.readLine();( F7 e5 Q2 z$ I, E$ D
    for (int j = 0; j < ySize; j++) {! e) k- i# W. T
     matrix[i][j] = temp[j];' @. i; h" j9 {( \/ A0 K( N) H
    }! o! e0 ?% B4 b
    i++;$ n/ b: v1 N! h3 v3 |. d
   }4 ]2 T: a6 D$ E% A) k  r9 e4 `
   in.close();
1 I7 P: x2 Y* {: J4 L; n( H  } catch (IOException ex) {
: T: A5 D' Q" H" L2 f   System.out.println("Error Reading file");- o& b  E, g7 H+ N. n
   ex.printStackTrace();
) Q9 ~& C3 J/ r5 }3 f6 O   System.exit(0);
! a7 `' o! o% r/ c% `1 @- m4 S& V/ g  }
. D" G& g' x6 f1 H  I }' x$ @, `8 A- n, Q1 l
public String[][] getMatrix() {0 W! D1 Y* z# \
  return matrix;
; O  |# l- v* M* q# m& ? }1 a* m! ?* C2 L4 `0 R
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-11 21:17 , Processed in 0.015292 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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