设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10430|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
. l; _2 n% y+ k, _5 f, b4 oimport java.io.BufferedReader;4 j, G  Y2 m" W$ @- L- p
import java.io.FileInputStream;7 H8 ?+ `+ `2 ]
import java.io.FileNotFoundException;
  ?7 y: V* T6 x( \import java.io.IOException;8 T" a0 ^9 m: e
import java.io.InputStreamReader;
1 e4 S* X  B. M* _% [  }7 q5 [- ^import java.io.UnsupportedEncodingException;
: Y& N$ u" ~7 g* Limport java.util.StringTokenizer;
3 w. J% u5 q$ }4 J* n& [* H& vpublic class TXTReader {8 D7 ^4 Y$ q/ g6 @% J, _" o
protected String matrix[][];$ f7 C, K& G" G6 {+ V
protected int xSize;  Y6 I9 W9 C! Y
protected int ySize;
) N) b( u; r# M& e1 R' X public TXTReader(String sugarFile) {
3 e( r. i  a& |4 m, t  java.io.InputStream stream = null;
9 y2 ?$ q1 C0 a1 w7 r) C8 ~$ _) o) u) E  try {
) _# p# A* D2 V" F   stream = new FileInputStream(sugarFile);  W% v3 Z- |6 ]' }6 N, Z) Q& D
  } catch (FileNotFoundException e) {
+ ?! Z$ C5 t' @  G& O+ \& Y# M   e.printStackTrace();
+ s% e2 f: }; ^5 \" h2 i; N  }! Q+ u+ l; X6 Z9 S+ o& {
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));7 d' m% k+ P9 X' }4 z: ]2 s' ^; z2 S
  init(in);
5 F; n4 o& i$ D$ N  x: ?0 a+ E }
( Z7 S1 J8 t$ M private void init(BufferedReader in) {; C- y% m( Q0 c7 l7 q. j' _$ ~2 ^2 F
  try {
8 x+ U. j' {- H7 P& K6 [   String str = in.readLine();  d8 C6 Y6 h( @0 P/ s  t* q
   if (!str.equals("b2")) {
9 r5 h" k( C) _* z) O; ^5 [    throw new UnsupportedEncodingException(
9 K3 {% \5 Z& T- T$ }5 _  \/ m0 D" Z      "File is not in TXT ascii format");9 Y# Z8 `- ^8 b7 Z& {9 i' ~
   }
+ F, E1 i2 h" @   str = in.readLine();
( {( S" h7 F% f' t" z   String tem[] = str.split("[\\t\\s]+");  `& w, O( d1 S: I$ ?, v% [3 o# z
   xSize = Integer.valueOf(tem[0]).intValue();. r, ^8 y5 Y% C) I7 ~
   ySize = Integer.valueOf(tem[1]).intValue();
, g# Q2 ~1 w, g" {0 w+ ^& n) G/ E1 {   matrix = new String[xSize][ySize];
+ ~0 \4 L- ]& A7 t) L4 A   int i = 0;
) B5 F- w+ o/ H: v   str = "";+ a2 L9 j- u7 `
   String line = in.readLine();+ s9 s/ A6 d) P' V9 V
   while (line != null) {
4 S) C; X9 X5 u; ^+ j  K" Y/ O: T    String temp[] = line.split("[\\t\\s]+");$ p0 P2 R$ s. l5 Z8 o. t
    line = in.readLine();! f# L/ e3 z  |1 K" i+ @
    for (int j = 0; j < ySize; j++) {
& O) |* n7 X6 K/ N     matrix[i][j] = temp[j];7 q- l! r( q  X: B. R
    }
. }; S* A* H% E5 K  n$ `    i++;! w8 L* z% Q! H  q+ N" |
   }
' l6 G% C( L4 T   in.close();
6 l/ ?) B4 Y/ l& c6 ?8 ^  } catch (IOException ex) {
9 J) ^& g; u  |  ~( U' u   System.out.println("Error Reading file");9 Z5 T8 r! C9 R
   ex.printStackTrace();( X1 F7 [- ]+ w7 s
   System.exit(0);) x" ?; v( t  x& S( y3 e
  }
( C7 j2 S% r# ~& B% g7 Z! W6 V }
2 ?3 O3 T* t, @0 l6 f# `7 B8 s9 P: ` public String[][] getMatrix() {" B! r, \: [' z( `
  return matrix;
$ K- z& Q' H$ P$ `1 f& j }' }  d3 u0 `$ R3 p
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-10 07:28 , Processed in 0.023308 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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