设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6503|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;' n' W5 ~! P: |; X
import java.io.BufferedReader;% X+ u8 w; L+ u
import java.io.FileInputStream;/ f" M1 ?+ y3 ~4 J) W
import java.io.FileNotFoundException;. O) [, i: S8 D' [- I3 J# ?, K% m! x6 W6 l
import java.io.IOException;) b* a% v0 U+ a/ G3 F
import java.io.InputStreamReader;( u# P% i1 Y3 k
import java.io.UnsupportedEncodingException;
. R9 O! {; O% y& O7 B& L# N- |import java.util.StringTokenizer;
4 T9 \6 n3 g4 k+ ypublic class TXTReader {
6 l( p% M4 v- I% K, A9 K7 J6 q protected String matrix[][];! [0 Z" ]5 w; v5 C# Z5 @
protected int xSize;
  \/ g0 h7 R5 @, X7 @ protected int ySize;4 p8 _1 ^$ u, Y. F& C. _  d
public TXTReader(String sugarFile) {
0 [4 J3 B, F2 \- L  java.io.InputStream stream = null;! P3 @- E. a+ N- h+ l
  try {
9 A" `3 o7 U+ M, t4 N. Z/ b+ i   stream = new FileInputStream(sugarFile);
9 p) S4 U7 `3 T+ k' Y4 P0 M" j/ w  } catch (FileNotFoundException e) {  P8 X8 G  W$ B) K3 _
   e.printStackTrace();
4 b& {/ V, N& T7 B( g  }
  i! b% a$ f) q5 ~4 F8 l  BufferedReader in = new BufferedReader(new InputStreamReader(stream));- j, `# B- @! O+ z- `' g
  init(in);
) Z& V# {( G. @0 v( `) o }8 a' F2 \. Z4 w2 p$ S
private void init(BufferedReader in) {* V0 D( A: i4 X% v
  try {0 Y9 U9 T! J. S) A/ ^7 O: v
   String str = in.readLine();
& Z9 I* i' q% a1 n  x$ H) A' |   if (!str.equals("b2")) {
& {" H9 p; C& G2 m    throw new UnsupportedEncodingException(" t$ j4 C/ }0 X0 u
      "File is not in TXT ascii format");
" f# F9 @/ }' ~& v   }
  A3 p+ N) q/ h- e& W: M& k& K   str = in.readLine();
- W& x+ J* X  g   String tem[] = str.split("[\\t\\s]+");
: k1 c) G5 z0 i& k   xSize = Integer.valueOf(tem[0]).intValue();
5 \! F1 U7 G2 r   ySize = Integer.valueOf(tem[1]).intValue();
1 e4 M. k; a4 h! Y* G- W& m   matrix = new String[xSize][ySize];7 l2 W4 `% k. o
   int i = 0;
3 n3 ^1 @  r( B1 z   str = "";
. b) K+ p" j4 W4 ^   String line = in.readLine();
/ @* u. M. E+ V  S   while (line != null) {+ C: r, X' P+ U2 r- i! M" B2 U
    String temp[] = line.split("[\\t\\s]+");
1 |/ G$ u* i8 x9 E) ?+ C) [, U% [    line = in.readLine();" J2 _4 L( c; `
    for (int j = 0; j < ySize; j++) {2 _* x& r" w6 u7 W, H5 c
     matrix[i][j] = temp[j];
. P$ m1 U0 [( A& ?% P+ S    }+ O' ^4 [, r0 E$ h( |) O7 @  |( j
    i++;
, z& \, A: _- v% C1 g# U4 v; |* N   }
" C$ ~8 U" @9 E1 x! g$ \   in.close();$ S# \( ^& t, q4 e8 F2 e. ~
  } catch (IOException ex) {
( {& I$ W3 T# H) s$ [$ p   System.out.println("Error Reading file");0 P; ~5 Q- A& g, {# c8 z
   ex.printStackTrace();
: s! g% Z  ]- H   System.exit(0);
$ j5 R7 d& _% r  s5 ^" G+ {5 }  }
: o& ^4 D; y0 [% b2 R. X2 U }
6 g  S# |* o7 E1 Q public String[][] getMatrix() {$ g' e  \( O3 V* d. ~% I: W
  return matrix;8 }! q' v& _$ \9 L, }1 L$ V2 o
}  ]' u) o# p9 q7 U
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-14 05:10 , Processed in 0.023144 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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