设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5816|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
& G8 W" q4 ]4 A/ r+ p8 Gimport java.io.BufferedReader;9 g* R3 f0 P6 @2 K
import java.io.FileInputStream;) u( J, Q1 S7 k# y. V
import java.io.FileNotFoundException;3 a$ U2 ~6 F- X
import java.io.IOException;
( p6 V# k. l9 v9 h/ Q6 [import java.io.InputStreamReader;
+ i$ u" K8 X$ T9 wimport java.io.UnsupportedEncodingException;3 m2 o: w0 ]. D- j8 C
import java.util.StringTokenizer;
. q- M+ ]% l/ T$ M+ |  ~, cpublic class TXTReader {
! T2 G9 v% _: V" X' Z protected String matrix[][];4 y+ c5 L1 A* X0 o
protected int xSize;3 N' a0 C1 _7 q$ L4 V/ B7 b
protected int ySize;
/ p$ R: E/ v, u8 G6 u public TXTReader(String sugarFile) {. _$ J$ m! e& v# t
  java.io.InputStream stream = null;: W. A# B* I5 s4 t% F' F
  try {
$ C7 e5 ]* `, I0 j) P* A   stream = new FileInputStream(sugarFile);
( S; E4 Y/ Z- X' o# i  } catch (FileNotFoundException e) {
  U/ R6 O( ~7 c8 Y5 y+ q   e.printStackTrace();
; }: h- |- O8 F3 p/ \  }
1 c) k( C, w) }% a& b" b# X& C  BufferedReader in = new BufferedReader(new InputStreamReader(stream));  |& c" J" N! \) G
  init(in);
3 u$ r& }. e4 j }3 f: S; ?0 `* w3 m0 _$ S0 p" ^
private void init(BufferedReader in) {
$ j- c! N4 y3 `! N  try {
9 n9 @4 @+ k, f6 }8 F1 M! y; ^   String str = in.readLine();2 Q4 k3 v+ t7 L8 @0 {7 X8 A) p0 n
   if (!str.equals("b2")) {
& A; l2 Q0 f9 t8 x    throw new UnsupportedEncodingException(
" g7 j* r! \' ?8 X3 M' P      "File is not in TXT ascii format");) T' L/ k4 J- i& n2 ?9 v
   }
. a5 w* M7 {, {! A2 r6 q9 L7 V   str = in.readLine();
9 C* T5 M! }* h- U* D% I% M  g" J   String tem[] = str.split("[\\t\\s]+");- d4 Z& p/ s" J9 p, u2 ^
   xSize = Integer.valueOf(tem[0]).intValue();
5 i: R" t' U/ G% {) i1 V; ^3 R   ySize = Integer.valueOf(tem[1]).intValue();
4 Q- N: P  Q! u# L   matrix = new String[xSize][ySize];
5 z) L/ @# x9 q* i! W( Y   int i = 0;) T. A( n9 S% X5 @5 P$ ?+ |4 j0 U
   str = "";) ^: F1 z/ o/ S; [9 ^
   String line = in.readLine();
0 a, ]% u# E" F2 ?   while (line != null) {
" o# E+ f. v& w; Z    String temp[] = line.split("[\\t\\s]+");/ s# b6 |- A' K- j
    line = in.readLine();
! s5 E/ g% Z8 h' {" W  \$ t4 w6 B2 ^    for (int j = 0; j < ySize; j++) {
. f- l; T3 S  r' p8 D     matrix[i][j] = temp[j];, ]+ L/ h& _) ~
    }( s* l- F2 e: k* e) _! c: |. E
    i++;1 K# Q" |7 G7 q2 h. T& O, V
   }$ S  W! A7 L. |1 x
   in.close();
" T( n/ \2 X  m3 B  } catch (IOException ex) {2 ~3 K5 j4 ]1 L; G) v
   System.out.println("Error Reading file");. z$ [7 g1 }  o& C
   ex.printStackTrace();/ A4 l& W: M4 x) Q. M& P' W
   System.exit(0);3 c  T$ i) u  d0 L6 o) _: \7 n
  }
1 D3 K# {$ J' T* m! T9 f }" M: k* X! s& P* ?
public String[][] getMatrix() {
* \) @* O! ]7 h' _1 Z, j2 ^7 {  return matrix;, w! ~, N3 n# l6 s# o
}( [7 M+ X- y' v
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-24 21:11 , Processed in 0.018509 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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