设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7380|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
( k. N" T8 ?) J: b1 eimport java.io.BufferedReader;
+ ]% N9 I! l/ u! I# @9 ximport java.io.FileInputStream;
! k4 o* c# @- [, L6 \import java.io.FileNotFoundException;
9 z: J% y/ r" B4 e  q5 Q( ^! Fimport java.io.IOException;6 o! O8 ~$ I2 X% Z8 v7 i
import java.io.InputStreamReader;2 \+ E' W, n3 ~" j. \% X
import java.io.UnsupportedEncodingException;
, w& \: U+ I, o$ x& vimport java.util.StringTokenizer;
2 q& f! E. F* d) z1 `public class TXTReader {1 U" C; K1 p. e' u! y
protected String matrix[][];# w. V2 n" g& @' ]5 W+ a( e
protected int xSize;( b4 y$ O9 k- E! {  }  i
protected int ySize;$ c; c! J2 e8 i+ s
public TXTReader(String sugarFile) {
- P6 t  ^4 q5 f: Y3 w  {% _7 b7 T$ ^! r  java.io.InputStream stream = null;: ]; W4 X8 H& J$ d/ n
  try {
( U* o2 @2 F0 F8 G/ p. w   stream = new FileInputStream(sugarFile);
/ R2 w. e6 f, X& Q  } catch (FileNotFoundException e) {
6 i. x& x4 u; f0 B9 u* L   e.printStackTrace();
( {* Y' w8 h( I  }2 N# V, I; \* i, e8 T; T, Q
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));/ ~2 ]4 O3 b& E% {# {
  init(in);# N7 C* v& e: _: B
}
7 B5 \8 q7 T( P9 ~, L4 x7 D% Z, j private void init(BufferedReader in) {& ~8 c+ x' K* D( U
  try {
% O& N& ~. h. ]* I   String str = in.readLine();  o% |2 B; M/ H" I
   if (!str.equals("b2")) {
: t- B  r8 Z; A    throw new UnsupportedEncodingException(" z% x. G1 C6 {. T6 C
      "File is not in TXT ascii format");
0 L9 L3 f; N% T# j   }3 P( Q* \8 S! ]+ E
   str = in.readLine();9 h- g' L; m, h" }3 \
   String tem[] = str.split("[\\t\\s]+");! X" M$ t- b4 y% S" [" @! O5 ?
   xSize = Integer.valueOf(tem[0]).intValue();( L$ v' w+ U. U( ]5 ?" b+ H2 l
   ySize = Integer.valueOf(tem[1]).intValue();7 n5 H5 S7 u* P# N, r) a$ l
   matrix = new String[xSize][ySize];
! X$ R' ^: ~! O" k/ H   int i = 0;
4 Y4 m9 @$ k9 f1 d  p   str = "";
! B3 O; Z2 u1 i7 U) m   String line = in.readLine();
* {/ d' W" I8 ]   while (line != null) {" F* l& w% a1 z, F* x9 y
    String temp[] = line.split("[\\t\\s]+");
7 x% i9 L, ]3 _2 ^9 Q    line = in.readLine();
5 i! d$ {6 s  e4 r) U0 b    for (int j = 0; j < ySize; j++) {
% D+ C- D5 X. y$ k     matrix[i][j] = temp[j];
8 `; t/ J, |' F3 A8 {    }6 W; ?/ P0 r9 `. |) B8 G
    i++;) G& j: Q% j% B+ X& d- w
   }
6 X+ a% Z' ^/ X' x1 |3 Q' P   in.close();
9 b. L' P6 l# @- Y  j. |2 W9 b  } catch (IOException ex) {2 i$ N& B$ c/ L" F* W
   System.out.println("Error Reading file");; h6 u2 v4 N; W
   ex.printStackTrace();
# `2 x& O" R: P; r   System.exit(0);4 A0 r: h/ a* o3 @5 k
  }
! ~; R+ ~6 [: P3 v  C# L: ]; v9 h }, u5 z# l$ {& D- ^/ B; H( p3 l
public String[][] getMatrix() {4 C0 J- t" j% N* p
  return matrix;
6 z3 ^! U" ~' w. Y! q$ F1 l5 c- q }
* v) Y- N2 e+ f}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 20:23 , Processed in 0.016018 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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