设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8594|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
1 g  o" k$ K0 P( Rimport java.io.BufferedReader;
$ T# u/ ?# U, l2 Cimport java.io.FileInputStream;0 _- O% }# ~# z+ D/ a; }7 G
import java.io.FileNotFoundException;
- x5 G, _0 Y7 |! K8 K& ^% a- kimport java.io.IOException;1 O- y& |! q4 z9 o- Y
import java.io.InputStreamReader;
4 k' y1 ~' N2 s" Limport java.io.UnsupportedEncodingException;9 A5 p4 A# z# `
import java.util.StringTokenizer;1 w7 h: ]- [% I% R1 j7 _
public class TXTReader {
# Z9 t1 i' H8 N# \9 k- ]0 U* I protected String matrix[][];
/ V0 j7 P- l+ k2 i; [ protected int xSize;
, |: r7 ~- c8 Y/ ` protected int ySize;8 j  g- W  w1 d0 V0 ]
public TXTReader(String sugarFile) {
% Y. {8 \7 K/ K) |; ]  java.io.InputStream stream = null;
$ p* M, z+ a, T: Q# G3 J  try {- d; B  e, R# |* P, m" ]6 J. H' ]
   stream = new FileInputStream(sugarFile);
2 p1 y, P8 j- J2 @0 ]  } catch (FileNotFoundException e) {
6 k' s" G7 V3 S1 H5 m8 m0 n   e.printStackTrace();
( y" {/ Y5 c+ P  }
' T1 ^- V+ C0 S$ K8 l& Q* e5 `  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
( }4 |8 h1 Z) q0 h  init(in);: Y4 B  ?7 W' {
}4 O. V% M9 R& W
private void init(BufferedReader in) {
% j- ]3 [) `5 g& t: Z: l4 D  try {
) W% H$ {% C7 w( z   String str = in.readLine();  `0 P" F# w2 z3 \2 G. x
   if (!str.equals("b2")) {4 b* V( r9 @; r4 Y. m8 x/ e
    throw new UnsupportedEncodingException(+ p9 f: B# p% q0 d1 Z9 z: A) n1 f
      "File is not in TXT ascii format");
' `4 }- P/ M2 X2 u3 s   }5 f4 t. d) T( B  U8 x# p
   str = in.readLine();
7 O6 N2 {  z& z0 g- h# s9 [   String tem[] = str.split("[\\t\\s]+");
. f! n# k1 D. g" p/ ]) e   xSize = Integer.valueOf(tem[0]).intValue();
) l* k) q. h3 u, j   ySize = Integer.valueOf(tem[1]).intValue();- }& |& u+ M/ g& Q, g+ b
   matrix = new String[xSize][ySize];
8 B* J  o* D; ?5 b: S8 ]5 H7 t9 y   int i = 0;
2 B2 f  R2 K1 R2 `) z8 F3 D# {   str = "";6 o1 y! r, G% q* G
   String line = in.readLine();
1 g8 @+ A1 q$ o$ z3 X   while (line != null) {
+ v$ r6 b1 G0 [0 y4 x6 D: d    String temp[] = line.split("[\\t\\s]+");
; e# W) y0 ?% D: ?; b: L# u3 U    line = in.readLine();5 @) o/ \/ q3 r0 A
    for (int j = 0; j < ySize; j++) {
+ r" c! F4 ~. o- Q( L0 T* ~     matrix[i][j] = temp[j];
# }8 |0 J: t1 W4 ~    }& J4 L3 [: |( \/ k: F
    i++;( @. e# q' @6 V0 g  F0 G) R
   }3 M+ C0 ]* L' T' F$ x6 {
   in.close();
) K# b4 k" P7 r0 D0 z8 K# l7 h  } catch (IOException ex) {
( d0 _7 }3 a( v  x0 A   System.out.println("Error Reading file");
( [' J7 S7 W6 j4 i& J   ex.printStackTrace();: s6 a$ c1 X, q: k9 c0 d2 N
   System.exit(0);
$ j2 {* }$ L/ |* ]5 ]  }
( p% \7 }2 T* [" R9 C }9 C: F8 H' v; q' q! z+ P
public String[][] getMatrix() {7 z( J2 `+ n: r+ a5 x$ A
  return matrix;
7 w) I4 x+ H/ t9 j+ r1 X- h0 T }/ b5 j9 }! u" `+ W& v
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-2 03:34 , Processed in 0.014982 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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