设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9049|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;  u% \7 q: O$ _% _" K. ?: w  f0 n
import java.io.BufferedReader;% q* P2 E0 \0 y) I# p$ }8 v
import java.io.FileInputStream;% B+ G. A0 E! N: e8 y
import java.io.FileNotFoundException;- H4 M7 j% G' s0 U* n: S
import java.io.IOException;
3 ^/ j8 X3 O5 c- l" Nimport java.io.InputStreamReader;
* K# w5 I" Z" H- p% h( c, ~; M7 bimport java.io.UnsupportedEncodingException;
; v! G8 V! W' }8 H+ V9 W& G8 }import java.util.StringTokenizer;
" ^) f# d) p" o$ {public class TXTReader {
& C9 j; S7 R+ E protected String matrix[][];8 L/ G: G) |7 b$ E9 J
protected int xSize;
. L3 o  i3 w: { protected int ySize;
1 Y6 V6 ^& N* [' ^, V( v public TXTReader(String sugarFile) {; Y& t3 o$ O- e# Q% G9 P5 e
  java.io.InputStream stream = null;
. U* p- c$ O/ N$ p1 o, o3 e  try {. |/ h* `! |4 W0 q
   stream = new FileInputStream(sugarFile);
3 j( k8 w( H! y' C8 d/ c  } catch (FileNotFoundException e) {
9 \4 Q9 e% a: v, K$ ^   e.printStackTrace();
7 a: B' \+ P- K- o  }2 i8 s# P, n3 @4 v
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));/ b; O: a. W7 m( A+ p  z
  init(in);3 ~( O, M, i% h! e
}; Z# O; S1 V) U3 @' ?
private void init(BufferedReader in) {4 x& Z, C- u4 G# S& R1 w  `
  try {
5 Z( K1 ?# _+ w' `* |( H  l   String str = in.readLine();& X+ i2 g' ~7 J+ ]
   if (!str.equals("b2")) {
0 Z6 Y' h/ z3 q& P$ g" l    throw new UnsupportedEncodingException(+ s4 q9 F2 e2 E- E& D, j
      "File is not in TXT ascii format");
% l+ O5 \* c% z4 g* [   }
& u4 X4 h* A4 N1 Y5 @0 y   str = in.readLine();/ R8 w) ^* ]  t# R4 @1 I. }% F) m
   String tem[] = str.split("[\\t\\s]+");7 p; d5 `' _/ Y5 V
   xSize = Integer.valueOf(tem[0]).intValue();
7 o* ^7 ^: S! o9 v" U& g4 n4 F   ySize = Integer.valueOf(tem[1]).intValue();1 g5 \  C" w1 {( u6 a
   matrix = new String[xSize][ySize];
2 ]- @5 F# B4 Z2 g$ a7 b" L- M# i   int i = 0;' @  r  @. n! }; \4 n% r, v
   str = "";
% E: s2 F1 j4 I% l9 Y   String line = in.readLine();" |% K5 h' ~+ Y, |, B$ m" q9 ?
   while (line != null) {% E+ F. D5 v3 N- x/ B; H
    String temp[] = line.split("[\\t\\s]+");" s! m4 q- N9 m  m/ J& C9 U
    line = in.readLine();
. A% n7 p6 w- z% U3 R    for (int j = 0; j < ySize; j++) {, z# i  V2 `! g; Y( O6 n- s6 a
     matrix[i][j] = temp[j];
' K" s8 r5 v) h, `0 I) ^    }+ W( A9 p* h& N0 B& i5 w% H
    i++;. ]7 N; S8 q6 z  w' X
   }
  T" l5 U" |0 y8 F( C   in.close();
+ F; h" m6 G$ T' z+ H; `  } catch (IOException ex) {+ K! u  X& V0 z9 Q  ?$ a
   System.out.println("Error Reading file");; B$ i7 c' g$ Y$ `; V) Y1 @" q
   ex.printStackTrace();
! Z8 j' t2 |; J8 K   System.exit(0);: O% f1 M" N# m9 d# F, H
  }
) b0 @" m: E- k* }* ^ }
2 @: }3 r: M9 }$ Z- r3 g8 x public String[][] getMatrix() {
- S6 s" _* I9 }' N: |. G; O  E. M  return matrix;
7 c# d& c$ F4 }+ K2 `, t3 e5 n }. P5 w$ E' M. R- G) O" h
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-28 18:46 , Processed in 0.013029 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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