设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8215|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
- d* N. S+ H& I, o+ Iimport java.io.BufferedReader;- B" ?' G' @! J7 Z' m- j! U
import java.io.FileInputStream;  H: m+ V1 ?& f# D3 R
import java.io.FileNotFoundException;
( c& m0 J" r4 Z  Himport java.io.IOException;
. n3 g- p+ j# F5 h7 v+ P: o7 Pimport java.io.InputStreamReader;- o: C3 [" g8 z; d
import java.io.UnsupportedEncodingException;
9 f. j, \$ p( O+ [9 r( Fimport java.util.StringTokenizer;3 w. x7 ^- ?0 O; `
public class TXTReader {# Q# y  ^! [' h1 [, q
protected String matrix[][];7 y0 w$ B0 X4 [! l2 y* O
protected int xSize;& V* x4 {) m2 i* P/ ?# u  T3 F
protected int ySize;/ ]5 c9 Q* G! V# F
public TXTReader(String sugarFile) {
$ ^' F3 K  \2 H" Z' {$ e& v  java.io.InputStream stream = null;$ v4 k( z$ s9 g' _3 C: k
  try {
% j. x' Q7 o+ ?   stream = new FileInputStream(sugarFile);- d2 u3 N, p4 ]" w9 b
  } catch (FileNotFoundException e) {! U3 A) L- P/ q6 g/ A+ @' c" z! Y4 I. a
   e.printStackTrace();* b0 @) K0 s% N7 {. D7 D/ f/ p
  }8 Y1 c3 ^1 |( N' e
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
/ k2 S8 ?$ a. G  init(in);. B& T3 L6 ?1 u$ \
}
& ^2 `0 u0 b6 C, u* h private void init(BufferedReader in) {! m& b* U* v$ a- G" P9 X. W3 n( C
  try {0 d- q7 ~+ ~& u( c; v
   String str = in.readLine();
) e. G8 i1 A8 U! b0 B   if (!str.equals("b2")) {
; R, l  m: Q. _8 _  d    throw new UnsupportedEncodingException(
- w5 X- i2 Z2 D) k5 a/ e      "File is not in TXT ascii format");) }1 |, J# o1 S5 H0 }3 ?2 L
   }9 ^& @3 u0 M7 q- l  P" {4 |
   str = in.readLine();
' _, D8 d! `7 K2 }+ ?& N   String tem[] = str.split("[\\t\\s]+");: G2 Q* G" N$ h) S6 u3 j# T
   xSize = Integer.valueOf(tem[0]).intValue();; w8 L8 P4 y5 v$ S" o+ U( q
   ySize = Integer.valueOf(tem[1]).intValue();
) v. H  }0 F" x8 P' r   matrix = new String[xSize][ySize];
" m' s  a% h6 w' J   int i = 0;
7 z9 k2 J. s6 [* U4 A7 c   str = "";8 ^5 v3 P5 F0 Y: k& J1 V
   String line = in.readLine();
9 f% [$ j& B# c" B; o' E# w& y   while (line != null) {
; E  r- I: w+ C% M$ k: t# n    String temp[] = line.split("[\\t\\s]+");- n+ N( Z& A% a& x) l# Y
    line = in.readLine();
2 r8 c* h* C& Y6 D' Y5 Q. j& K% [    for (int j = 0; j < ySize; j++) {
0 F+ g4 l0 `4 I. J     matrix[i][j] = temp[j];
7 N+ f' ^; r/ ^6 A5 \    }& u$ d7 l! F" ?: t& ?( f9 |
    i++;& U6 q6 S3 E1 d% u6 q! q# w) h% l2 n
   }/ D3 C7 D7 \6 J2 A* o8 K
   in.close();
0 j, U8 f3 v9 m9 e) ?  } catch (IOException ex) {0 q, l% e! `0 e" r% l+ a: y
   System.out.println("Error Reading file");4 U3 N& C( k1 |0 j# j: N5 Q0 N
   ex.printStackTrace();5 ^2 k* ~7 r" d5 F5 K, v
   System.exit(0);
* {6 a7 j0 c1 B9 R- r$ ^0 Y  }
, t# _% @* ?$ c9 {8 j5 ^1 X: h1 ~ }
- t6 n" G1 h' E public String[][] getMatrix() {
5 U6 w7 l$ r* N# \7 X5 G  return matrix;. D& G& F/ L5 \5 t, d* i9 K
}
& @, b8 T% g$ E! ?" x: l}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-8 15:29 , Processed in 0.014066 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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