设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10104|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
, \& k! b( n# I4 F9 K0 f8 Eimport java.io.BufferedReader;% M2 g2 d: E4 c; T0 |/ b
import java.io.FileInputStream;
0 R# N  i/ @' Y" ^. F1 `/ L8 o5 pimport java.io.FileNotFoundException;5 F6 j7 R' e+ t7 s7 Q' @+ ?9 N
import java.io.IOException;6 F5 i" \! }6 o8 E
import java.io.InputStreamReader;
$ ], q' I: Y9 O  Iimport java.io.UnsupportedEncodingException;! J5 j* M- g) ^; q
import java.util.StringTokenizer;
. L3 q) D9 z9 H5 Z% l( _public class TXTReader {
) r0 W( B! C; _ protected String matrix[][];8 {2 M) Y, B) _3 m, S
protected int xSize;! n. ?0 r' x+ y& d5 i! e: a
protected int ySize;. d% D8 d: Y' K  \
public TXTReader(String sugarFile) {: o) E) ^, x1 e0 o# y% Y: F+ d
  java.io.InputStream stream = null;6 u+ _! C& W- X/ J, k1 v( c. s
  try {
+ a: B/ I* _& W   stream = new FileInputStream(sugarFile);2 {0 W0 m; H6 W5 P' F! q0 A6 T
  } catch (FileNotFoundException e) {3 ~& L5 l+ u( C: E: h
   e.printStackTrace();9 G; K" S" h+ K
  }5 s* V; b. D& J. m9 j8 j
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
; n. y& r4 Y# X# [& B2 _  init(in);/ x- J2 f# J; y/ A+ u
}5 {& n' W3 O0 Z  |0 A
private void init(BufferedReader in) {& W! l, P9 f# M0 R' a- p
  try {
! C0 t$ x$ q  ?. _9 N   String str = in.readLine();
6 M& Z: f* o" B  R6 O   if (!str.equals("b2")) {4 I! a$ j( D3 U9 D6 y8 z- k
    throw new UnsupportedEncodingException(
$ N3 F. D& {) C. h4 [7 W- o      "File is not in TXT ascii format");
2 I0 l3 L: n2 J4 u: B   }
! M! A$ ?" ]- D4 O7 B! g8 z   str = in.readLine();' O2 h9 d# E5 z( j  z
   String tem[] = str.split("[\\t\\s]+");
: I$ ^0 B: Q. Q( X- W   xSize = Integer.valueOf(tem[0]).intValue();) d( S: H. K3 p
   ySize = Integer.valueOf(tem[1]).intValue();6 ^6 v3 N: }9 r, b
   matrix = new String[xSize][ySize];
, O( i7 a. m# d# N5 a   int i = 0;
5 ^' Y6 H$ F* ^. j! \' c2 k2 U   str = "";
: p1 V0 m6 N% s2 N$ B+ Z4 Q   String line = in.readLine();
: C3 e# G% i# [   while (line != null) {
% o  E4 A9 t. O    String temp[] = line.split("[\\t\\s]+");# p& W6 p% Y" ?" O" X8 l
    line = in.readLine();5 j3 W, i1 e" `
    for (int j = 0; j < ySize; j++) {. p. r6 y1 f4 @' ~6 |! d/ Q9 K
     matrix[i][j] = temp[j];
* k- s2 k/ }$ M) Z% x1 {. j+ f4 O    }
* ?$ Y# a: p& G# R: j    i++;0 B- e# k1 [, }( W; G- m7 q2 H
   }& i( B' g& S$ ]) f  C3 I
   in.close();
- A( c3 C: u1 v3 x+ @  } catch (IOException ex) {
0 t8 z0 A3 R' S   System.out.println("Error Reading file");
) t% t& T' m, Y6 y# M' V% N   ex.printStackTrace();8 J9 b7 i) L9 W. u
   System.exit(0);
9 Q$ s0 g7 Q( H9 ^0 I  }
: g  r8 ?" Z4 ]( p$ V }0 I" a  n* D7 H8 U
public String[][] getMatrix() {
- Y; T: K6 z4 x' L% x  return matrix;
  s/ r  x$ }. e( N$ z }# Y0 p( _$ V+ J3 _9 ~0 q
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-22 18:03 , Processed in 0.016264 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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