设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6158|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
4 J1 ^; C) Q. }$ cimport java.io.BufferedReader;# R9 ~( o8 F$ T! m: v! E# k
import java.io.FileInputStream;
; w5 ]$ `) c) O* Limport java.io.FileNotFoundException;
7 \$ _  Z6 P' G8 Y% F9 l' nimport java.io.IOException;: F% n# |. u9 C8 F. i( b
import java.io.InputStreamReader;
/ h& ?. X2 S% P; Dimport java.io.UnsupportedEncodingException;
8 r2 \: W2 M+ X1 ?import java.util.StringTokenizer;
( ]/ z/ T$ o" \# Z8 L" i# [) rpublic class TXTReader {
) h2 E5 T! V" X/ b protected String matrix[][];
2 v: E3 i" a% }0 H8 ]& I5 y protected int xSize;
! t8 n& O2 E- @ protected int ySize;$ ~' o; l5 e% R; O
public TXTReader(String sugarFile) {5 W) e7 Q4 \' s+ O% n3 z) \- g; Y
  java.io.InputStream stream = null;
) M+ c& p1 _, M0 ]  try {
  ~3 A& p" G! I   stream = new FileInputStream(sugarFile);
: U; h$ i5 M/ r. D# e1 u) ~  } catch (FileNotFoundException e) {
  A  y0 ^& i/ u: h. {2 `/ L   e.printStackTrace();
3 x! n( X2 o1 j1 w! l) \  }
" k' d; }% @) P6 Y# }5 e  y  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
6 ?! T1 h) L9 ~9 X. y/ S  init(in);
6 p) ^7 v2 f# Y0 f4 W }0 X  h  m( @% l( ?
private void init(BufferedReader in) {
9 O, d2 ^- ]+ R, v- y$ a  try {
, y# Y' t6 t$ Z0 @3 s2 ?   String str = in.readLine();
6 O3 R* f& z: N. j$ \   if (!str.equals("b2")) {) J" n* J; h4 x( W- c
    throw new UnsupportedEncodingException(3 G; F0 J$ Y* k! s
      "File is not in TXT ascii format");
, f7 ~5 x2 G$ M4 B$ v5 W# m   }0 ~/ h/ Z" w9 F4 Z2 ]7 N" v2 r  T9 K
   str = in.readLine();
: t9 y- ]! i! F1 v" H5 f. r+ F1 ^2 Z   String tem[] = str.split("[\\t\\s]+");3 A% @) u  F, L3 D* O! q& e8 j5 e
   xSize = Integer.valueOf(tem[0]).intValue();$ u. L: x2 C( m; J
   ySize = Integer.valueOf(tem[1]).intValue();
" S7 `1 G0 Q$ |: F. F6 L   matrix = new String[xSize][ySize];& Q) h  |6 q9 ?* Y1 |, W
   int i = 0;
/ h* {2 f" ~- ~( f3 ~   str = "";* r) s6 j7 i- e2 t( N. X+ p
   String line = in.readLine();
$ o# U) q1 C6 _   while (line != null) {
1 ~  N# ]+ ?/ |% d/ U% W    String temp[] = line.split("[\\t\\s]+");0 M( k: S8 ]6 g% v6 T
    line = in.readLine();9 O$ X7 s, ^. ^5 _1 r
    for (int j = 0; j < ySize; j++) {1 g' C* ]) K) H" V
     matrix[i][j] = temp[j];
; o9 V% ?. _4 B) V    }
8 m2 Z7 G* }8 y! _- ~( J, u    i++;0 g6 g  a! v. @* ~: m
   }
( w* q; h" H% z. Q   in.close();
- ~" z' c% c8 ?  } catch (IOException ex) {7 N% ~4 c8 n# h! a* ~# `% \
   System.out.println("Error Reading file");
' E" i' w" Z1 b' o* ~   ex.printStackTrace();! d  `8 N9 J* |) M
   System.exit(0);. `3 p0 l* _! q; Q4 K( X, q: U7 z
  }2 j8 \# c7 N- k# e8 O4 @; }2 k# d
}
7 M% i- M# {, ?( l  g8 ?! z% s public String[][] getMatrix() {
% r  D3 S2 t' I  return matrix;+ J! [4 e1 I) u
}$ d' \1 A5 x2 t- _# X
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-14 02:40 , Processed in 0.020075 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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