设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9106|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
1 c! Z! G) ^  x1 D7 Ximport java.io.BufferedReader;
8 F3 g1 C/ a2 e; D* M; G) Jimport java.io.FileInputStream;" C1 X, o8 y' b4 I1 L+ c& l
import java.io.FileNotFoundException;3 O9 A. d9 j" a9 z4 w4 O- Y
import java.io.IOException;
, A/ ]' [* s; X5 Pimport java.io.InputStreamReader;
5 t; P+ P8 U% Y) p& {+ F9 Oimport java.io.UnsupportedEncodingException;
0 m- `2 ?7 S. Y9 f! Fimport java.util.StringTokenizer;! M8 J. A3 I7 L- T# |
public class TXTReader {
3 D& n9 h4 ?) m9 y% T protected String matrix[][];! E% v8 j2 S/ E4 w- c, J
protected int xSize;9 U+ ^( C3 A* P5 _# w
protected int ySize;
6 `, N; d( H+ b, ~ public TXTReader(String sugarFile) {* y4 v6 b( G# H! c2 |, w) z
  java.io.InputStream stream = null;1 j0 B; z" S+ j: ~  {- C
  try {
2 C$ W7 l- l" ?   stream = new FileInputStream(sugarFile);
( L, t! @4 K8 @5 J! n: v7 A  } catch (FileNotFoundException e) {% p$ |& P: o3 ]- f! p& D. o& x6 v
   e.printStackTrace();
$ _0 c* H/ L* `! G1 k  }5 H. _3 @" D7 I1 ]
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));1 [) v8 K( i) O/ t; t; g0 E
  init(in);
# C) x2 V3 G: x5 p& l' ^4 j. y }
$ r6 {3 j5 z% _( N( T& Q5 b& O, y private void init(BufferedReader in) {' G* ]6 y7 e/ J) _" `$ R
  try {3 L  p+ R1 v- j3 Z0 ?; M
   String str = in.readLine();
- P. n0 `5 L0 C: _   if (!str.equals("b2")) {
% y0 g& o( `9 J- x: N' e    throw new UnsupportedEncodingException(1 j; K3 V$ n7 I; U5 p
      "File is not in TXT ascii format");+ T2 q) P! ?5 k( n$ f
   }
3 c  S4 R9 O( H- [   str = in.readLine();
8 g. v" {, `* ]" Y" u( n8 q1 s   String tem[] = str.split("[\\t\\s]+");: A9 V0 d+ j$ X" Q# M# w+ ?
   xSize = Integer.valueOf(tem[0]).intValue();
4 o! Y* X$ B0 b   ySize = Integer.valueOf(tem[1]).intValue();" v+ Y& N1 P7 U; E
   matrix = new String[xSize][ySize];+ o& h0 l$ L: H2 c  F9 J/ D7 a
   int i = 0;
8 E4 \& e) c9 B   str = "";4 K7 f3 E3 ~( {
   String line = in.readLine();
8 [/ ~1 n5 `1 T; M! J4 k8 |# x+ E   while (line != null) {2 X1 U* R6 Z; s. T% e" ^
    String temp[] = line.split("[\\t\\s]+");
2 K* w1 D4 n! ^+ @4 b    line = in.readLine();! Q  l3 z* M3 f5 j6 `1 s+ Y3 M* \1 `& ~/ o
    for (int j = 0; j < ySize; j++) {' o! K0 p) M: Q& I% n
     matrix[i][j] = temp[j];
+ n8 }+ y0 ?1 E. U% _    }5 v% ~) S2 J! J4 F
    i++;4 ]$ O+ e! c+ L  y0 h
   }
1 o' E% y# _$ Z+ @3 H) Z2 U+ x   in.close();! o- L, Y8 p9 L% @
  } catch (IOException ex) {; W# [' t( C5 S1 r, @0 Y& R0 `
   System.out.println("Error Reading file");
% G, k* r0 R5 H' u$ W! _   ex.printStackTrace();
. ]6 A# @7 v% X$ y7 I% I1 N   System.exit(0);0 U# c% g( \% o3 T
  }: v6 I$ W" _, Z
}; J5 Y: H9 P$ J$ W6 j5 u6 `
public String[][] getMatrix() {8 H, c8 n1 z1 ~
  return matrix;9 Y+ a- l2 A' P* m4 Z
}6 a6 Z9 N1 _7 q
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 07:39 , Processed in 0.013709 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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