设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9503|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
5 E5 L2 P3 b: d' b2 V5 o" L2 i& D6 himport java.io.BufferedReader;
3 W" s% \. Q0 i+ r, ~import java.io.FileInputStream;
. n3 s6 j! W: ]1 H2 W6 `import java.io.FileNotFoundException;
- i1 i+ C* q) x; F; Qimport java.io.IOException;
/ n# M4 a5 K# D$ h2 D: Uimport java.io.InputStreamReader;6 M, p- ~6 F* |2 G5 m- W9 I  q
import java.io.UnsupportedEncodingException;
* H  {. H- {8 m, [& {9 [) [import java.util.StringTokenizer;
# s  b0 _  A1 o: {4 r9 D* rpublic class TXTReader {  Y6 {! H$ E+ H" Y6 k
protected String matrix[][];
; z" k& t) L# B6 X6 { protected int xSize;
/ |( W7 v! _; G protected int ySize;3 ?' x/ Z1 Z& H" \/ P% K7 S: @: s
public TXTReader(String sugarFile) {
4 y+ J) \, o- A  java.io.InputStream stream = null;
  N9 N9 N1 z' G% ~2 X* G9 a9 C. q9 N  try {
8 o! A9 B! j* W* F9 W   stream = new FileInputStream(sugarFile);
. W1 J3 O, g4 o) x* d+ e$ r  } catch (FileNotFoundException e) {* Z% L' t7 I9 {3 _. p+ i+ Q3 I8 h
   e.printStackTrace();
) h- n- [. P4 X" E3 D1 `: P* V  }2 E  V1 l1 F; }: y2 D$ h. ^1 Z
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
( q! B* h5 |; B4 h  init(in);  E; v6 n" e  |; w! X
}7 ^. D' `) h2 K  E- |9 F
private void init(BufferedReader in) {: C" N0 S) c2 q( ]
  try {
% g4 d# _) _6 R9 Y6 a6 T* b   String str = in.readLine();
. K. x2 R0 L/ x2 c4 k2 N+ R   if (!str.equals("b2")) {0 b' L$ L& a7 I! I
    throw new UnsupportedEncodingException(; h) w2 t, Z. C0 V2 L( E. D
      "File is not in TXT ascii format");- n! f4 \6 o+ s* P
   }7 ]5 q$ j/ r2 j  f+ n
   str = in.readLine();
4 ^4 p& m+ M$ l# `4 m4 y   String tem[] = str.split("[\\t\\s]+");
/ Y* r5 R3 u. p2 [" S; o   xSize = Integer.valueOf(tem[0]).intValue();
# e/ v) _. H- Y   ySize = Integer.valueOf(tem[1]).intValue();
5 F! `6 X0 a) ~0 N7 [   matrix = new String[xSize][ySize];8 D/ _6 u3 R5 ]& t) e# d
   int i = 0;
5 d! e5 ?  S) F- F   str = "";
) i% d5 @" U' N   String line = in.readLine();
- T0 `) }$ F6 A   while (line != null) {# S3 ~, N$ e" ?8 K
    String temp[] = line.split("[\\t\\s]+");8 o4 l+ k6 b9 w/ q  p) n
    line = in.readLine();
8 F. _" s0 M* m3 s. @- k1 G% p6 C    for (int j = 0; j < ySize; j++) {
% U: {; a# N5 W) P     matrix[i][j] = temp[j];
# {; S; ?8 O% l% k1 a9 R7 y/ P7 Q4 X    }0 V% ?2 K1 ^4 T* e) |# U
    i++;
! f& c; y/ u; n3 x1 x- p   }( Y2 u5 g+ n+ Y/ N  f5 p
   in.close();  T8 i9 V4 E" F3 t3 ?6 q# m
  } catch (IOException ex) {. G" x3 h& t; V3 C% e
   System.out.println("Error Reading file");; I( L1 j5 V, u+ a# I5 f3 L' d1 ]
   ex.printStackTrace();5 L) q( D+ b3 i; a3 h! q
   System.exit(0);
/ Z7 @! e; X$ ]8 x2 ]  i  }3 {+ G0 |0 r: ~) c) _4 ]
}
1 k# [& ?/ R; Z- z; K5 v) N public String[][] getMatrix() {
" w6 \. e& |' j7 [1 v. s6 V  return matrix;  K  x% L+ R) z9 \
}
- |1 K( r; S. V8 q+ C' x}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-22 06:29 , Processed in 0.015883 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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