设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9941|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
4 y( L8 T- F3 ^import java.io.BufferedReader;
" F  L" K: o( t: a( qimport java.io.FileInputStream;/ z$ _1 N4 r6 H4 h" D! Z9 P
import java.io.FileNotFoundException;
5 w1 x& u' l8 x/ ]. `import java.io.IOException;5 a, Y- j3 ~$ m" I& _6 w, L
import java.io.InputStreamReader;+ [0 h' `( ^6 j# E2 t
import java.io.UnsupportedEncodingException;
& c! Y7 r* q( simport java.util.StringTokenizer;
  b  F# q& Z9 apublic class TXTReader {5 z# q; f; e7 V
protected String matrix[][];4 Q" I, ?  f; Q4 M) k
protected int xSize;  q# I# N+ }7 N+ l
protected int ySize;
& T# X/ C/ a. e* m6 n- H public TXTReader(String sugarFile) {
1 J/ `1 C: f1 o+ b& H1 C  java.io.InputStream stream = null;$ C0 `/ H  r) X4 G3 N6 {
  try {
$ q4 E& p. J7 \: o7 i   stream = new FileInputStream(sugarFile);
( O1 y4 }( H+ W  [, l' s6 `  } catch (FileNotFoundException e) {8 o3 Q/ e5 ]) g" p  @3 y
   e.printStackTrace();
7 Y& y0 Q" S3 g! ^3 I. z% e* X  }
( [6 ?4 m( r( F9 @2 \  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
$ b) G* A* g8 S. P7 J  init(in);
2 Q, w$ E3 D+ r+ r0 P }( z- C% H# G& j5 s0 [
private void init(BufferedReader in) {
# g; P$ T* A  w% @/ `3 m7 M  try {
5 Q' |, _" E% p4 v- T& Q! V9 C: l8 n   String str = in.readLine();  L( z4 ~9 T' V( `; W# w; m
   if (!str.equals("b2")) {
6 E! g4 w, ?2 d% I7 r- }1 ]5 ^% A8 c    throw new UnsupportedEncodingException(
. ?) G  w- s6 U4 ^      "File is not in TXT ascii format");8 M9 r4 z/ l; Y3 q
   }  V, \& e+ p" U- ]0 n
   str = in.readLine();
% L% k9 C, t( j! M   String tem[] = str.split("[\\t\\s]+");
  D8 s) k( b+ N+ [   xSize = Integer.valueOf(tem[0]).intValue();
# F0 G+ X. ~/ g% `' n   ySize = Integer.valueOf(tem[1]).intValue();
0 h- l# z+ G& H7 r. h: ~8 e   matrix = new String[xSize][ySize];0 |3 f# Z0 M( m0 e7 w0 F
   int i = 0;
. Y1 K* G; s! M/ B0 c) _  f   str = "";# o% v& u6 t* d, A) }/ x% n1 n; r
   String line = in.readLine();
1 |8 b1 N6 h. l+ p   while (line != null) {
- g. m  ~' {* q    String temp[] = line.split("[\\t\\s]+");
* g) N9 a' `7 x6 ]    line = in.readLine();' R9 J- a8 n* e
    for (int j = 0; j < ySize; j++) {. I: X! m+ }; @' ^% ?, u5 k
     matrix[i][j] = temp[j];7 E! d$ M5 y( Q# ?" R  {
    }
) T8 O+ X/ H6 h7 V% F1 |4 E* y: J    i++;
5 U; Y4 k. J* f# |  r/ w   }  ^; ^, h; P" B( J; B- a+ u) Q) b- Q! k
   in.close();' V. G) @8 Q& m; M/ L$ \; \) J
  } catch (IOException ex) {2 {3 O) S: U; x6 u6 u; u5 {
   System.out.println("Error Reading file");
, n" w* n2 @) d% v, B" K   ex.printStackTrace();& J# ?' X/ N7 i5 Q' W7 X
   System.exit(0);
8 L  a, e! @3 K" _* `) W0 W  }' `4 z0 [8 |7 I' w6 ^
}
" o/ `. V4 P: D! z2 O  N( Z7 C public String[][] getMatrix() {
9 Q' U) n6 P4 c  return matrix;
; S+ \, {/ C: B$ E* i) p }: S6 m, b& h, y# ?" b: ?
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-12 13:19 , Processed in 0.017931 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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