设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7650|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;+ M: ]% \! k, W. I
import java.io.BufferedReader;
! Z7 I( `# I# ~9 m2 m# @$ i9 Q# limport java.io.FileInputStream;
/ ], J, W, H; U0 Cimport java.io.FileNotFoundException;. V+ l# u+ |6 {  A- X, g
import java.io.IOException;$ v1 s4 j9 |. M0 f. g. h: w
import java.io.InputStreamReader;! w) j4 r% W0 |: k% w( u+ `
import java.io.UnsupportedEncodingException;+ T' I0 Z( I/ Q, U
import java.util.StringTokenizer;
( {6 x/ O: B) A& p  l) Z6 H& b' `public class TXTReader {
6 g6 |& d+ U; k2 t protected String matrix[][];
0 {9 L& q+ o% w+ u2 C( \% ^4 C protected int xSize;
# o' D9 C2 J1 A& w" W protected int ySize;; J& h) Q( ~1 N# O' G- S
public TXTReader(String sugarFile) {5 |* C! F5 e- K. P* g9 L. f2 Y
  java.io.InputStream stream = null;
8 O0 [% @) J; f1 E) W  try {
9 z& v2 j( [  c" @$ r1 t   stream = new FileInputStream(sugarFile);# O& I( e/ n6 V$ t
  } catch (FileNotFoundException e) {0 h/ n6 `5 c5 M! H% m
   e.printStackTrace();
& v( B' e* R+ C9 k9 ?, N* F  }/ l% H( n( e9 y- w7 s
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
* n$ Z! L5 ], ?4 W$ @7 L  ?  init(in);
) I1 |/ j6 y' N) q8 c }- x3 J& L4 U4 N& X
private void init(BufferedReader in) {
0 Q# o) m. f5 N- I( p  try {* Z# e, u( `/ u& Y5 ~/ F
   String str = in.readLine();1 M/ s/ S) X& D) I) L" T
   if (!str.equals("b2")) {
5 n# S! A+ |" T+ K( e    throw new UnsupportedEncodingException(
0 I) f7 o9 g$ ?- W2 Z6 Q5 ]      "File is not in TXT ascii format");
; |( [  P7 v& {4 H5 s1 H7 U$ ]   }
% U) d& K! O* K/ j! K9 A   str = in.readLine();
( o5 A. L* R2 l1 }9 R2 s) w( ?   String tem[] = str.split("[\\t\\s]+");
, B7 p6 M- [' D+ w6 E  K2 T   xSize = Integer.valueOf(tem[0]).intValue();
( n+ X7 W1 X/ F, W6 G% O. |. |  A   ySize = Integer.valueOf(tem[1]).intValue();
. I4 H* x2 V: L* x0 d& f5 I6 I0 V   matrix = new String[xSize][ySize];
3 I) ^  I1 a' H" W$ J4 V1 y   int i = 0;% _" G/ Z1 a' t/ t4 S! J8 w4 X! V$ M: [6 t
   str = "";4 k' i0 Z8 H" v/ v5 I# I6 N" ^
   String line = in.readLine();& _- i! l( _+ E: f; k. g9 k) V
   while (line != null) {: ]% f1 F4 ]( l3 P
    String temp[] = line.split("[\\t\\s]+");/ {& p; ^; A5 F6 ^; z$ F3 ?
    line = in.readLine();& D  W. Z4 V$ l* V( o
    for (int j = 0; j < ySize; j++) {% l! K. o3 h3 I5 d2 C8 ?6 ~3 c3 V
     matrix[i][j] = temp[j];% E& H: u# s2 I% O+ v2 y
    }5 ?% g2 c* l$ a9 e, U5 l
    i++;- m1 W3 [# }6 e, z2 K# Y
   }1 W% J: w- M9 y+ o
   in.close();" x3 H8 v% f9 A" I
  } catch (IOException ex) {
- d. c- x( r+ Y   System.out.println("Error Reading file");$ B4 Y- [/ k  I' p. W, A' f* v
   ex.printStackTrace();
" W. ]1 b9 P3 q; H9 F( c1 i4 z   System.exit(0);
+ z; ~! Q$ _0 k  P# Q  }4 |4 l5 g& j' i
}: Q- z" ~" t+ f# k) o' V
public String[][] getMatrix() {! f1 |0 K. n/ m4 d  `
  return matrix;& X6 h4 v' q3 k: X* s3 d4 Z3 J$ N
}
; q; t0 [4 P$ n3 D' D% D}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-4 07:11 , Processed in 0.017986 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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