设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9093|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
5 i0 D- J8 c3 c0 ?3 Z. Jimport java.io.BufferedReader;4 u: F/ L( X6 K* U* P/ E; ]5 o
import java.io.FileInputStream;1 k) o1 r: w: m) x
import java.io.FileNotFoundException;
& {! A  f! u3 z: J& K$ ]import java.io.IOException;1 d- r' H% d! \; J3 e
import java.io.InputStreamReader;: o+ n- x: i9 X- N" c" b  z% |
import java.io.UnsupportedEncodingException;
* @1 e( j$ C$ [4 e4 Vimport java.util.StringTokenizer;3 q6 ]# h, Q! I7 J1 ?
public class TXTReader {# J) [! V% f- H2 O3 l9 `
protected String matrix[][];
+ d* r  m% H1 W, { protected int xSize;
; ^$ o% E3 x4 p0 v" n+ V6 @ protected int ySize;
/ V7 J1 l$ ?0 J- M public TXTReader(String sugarFile) {
3 N9 B, @5 W+ w3 l1 ^' N$ n  java.io.InputStream stream = null;5 O1 Y$ |5 x# U. s: F
  try {/ B8 `, p0 y+ R
   stream = new FileInputStream(sugarFile);
; x) m7 c% J- Z- I% K5 l  } catch (FileNotFoundException e) {
- ]. u1 `  k: d7 k4 [/ e, v   e.printStackTrace();
1 ?& M; f; S8 d% a# I' m  }
  T6 l& F& h3 b. R, f! |/ N) s  O  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
1 A# Y. |* W( N; O/ C  init(in);
; f* n/ S6 K; T' [8 J& ] }8 Y9 ?  k3 E5 `+ N
private void init(BufferedReader in) {
$ D# u% F: m+ t  try {
% L7 ?7 u2 `3 A1 @   String str = in.readLine();  B' w4 P4 F. d5 z7 H! o
   if (!str.equals("b2")) {
2 Z8 t6 s+ S& u3 H+ J    throw new UnsupportedEncodingException(
! H5 Q: j0 L% |% n1 c      "File is not in TXT ascii format");2 Y. T) _& M$ t* ~6 W0 V& t3 ~1 d0 J5 e
   }
1 i' L3 a. `1 C. ?3 o   str = in.readLine();0 _2 Y6 x3 q3 \) C% I2 S* y' R
   String tem[] = str.split("[\\t\\s]+");; H* g/ R4 S0 ~5 @- j  x( z
   xSize = Integer.valueOf(tem[0]).intValue();
) ]6 i+ U! |7 v   ySize = Integer.valueOf(tem[1]).intValue();
+ G' o5 M5 f8 y8 T/ y! `. t   matrix = new String[xSize][ySize];+ T1 P8 w, I7 j- H
   int i = 0;1 `0 O) C6 O3 v% `# e2 J6 K7 V
   str = "";* k/ |8 l4 p7 x$ g7 G! P
   String line = in.readLine();
2 J0 I/ q, F- J5 @2 J/ S. v1 `   while (line != null) {  n1 U  q# F2 d  a  r, `/ t
    String temp[] = line.split("[\\t\\s]+");9 y0 Y7 _6 X& N
    line = in.readLine();7 g. u& P4 p" {6 f
    for (int j = 0; j < ySize; j++) {
9 ]; P$ K& w  \0 C* y* K     matrix[i][j] = temp[j];
  F$ }0 T# K, m    }
1 o% g# E1 n4 Q    i++;0 o8 ~: l" R" J  P; p7 v0 g; b
   }
6 `2 m: L! P+ z/ R' V' e& A, _   in.close();
! A+ x* u( K* }$ X/ k  } catch (IOException ex) {
4 K) q3 j  z  M; a2 L1 h2 J   System.out.println("Error Reading file");
, I  x& T# y9 p! k# B   ex.printStackTrace();
; o4 w% l4 }' O6 x: J: K   System.exit(0);4 f5 F( p) m9 V; e
  }
2 Y. E3 C  z1 O }
' u) q1 }5 ~8 s* ]  }8 g public String[][] getMatrix() {
: P. W) D8 T% w) B  N, @1 I  return matrix;* u- `: r, X; j- y
}+ R+ D7 J$ [+ I+ m4 M+ x( P
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-1 13:05 , Processed in 0.015912 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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