设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6662|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;) ^3 n, _  \+ s4 B& D0 `
import java.io.BufferedReader;
# d0 S* g/ n+ }8 d+ t1 s5 vimport java.io.FileInputStream;. U% _8 E. s/ ]. f
import java.io.FileNotFoundException;
: e0 {( w3 o/ z* [import java.io.IOException;
+ v& F* b3 L5 j& g, uimport java.io.InputStreamReader;
/ I6 z! w1 P" ^# }, [+ T( }, o- {import java.io.UnsupportedEncodingException;# t) d7 u& d- u% A! x5 [
import java.util.StringTokenizer;
5 m! P3 K( E: k; _public class TXTReader {
" D: @8 P4 Q! E3 a protected String matrix[][];
6 c' d$ ~/ Z$ d; _" r protected int xSize;/ |5 B1 I' w6 N2 z. j
protected int ySize;
+ C. P% K$ m& \1 z6 ? public TXTReader(String sugarFile) {
) ^4 @8 ~3 [4 e9 d5 |1 |  java.io.InputStream stream = null;
! _; q' s) o/ D9 ~5 E6 g  try {
- _5 I% y6 Z8 y% H) `$ U4 a   stream = new FileInputStream(sugarFile);
- `1 l( Q9 E& c0 v" _" D" y  } catch (FileNotFoundException e) {& i! f1 G% v0 h- ?& a4 u& j
   e.printStackTrace();
8 ?! E3 i5 Z- Q1 o$ p3 S- H  }# z4 q6 O% t$ E: h
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
1 J/ H/ C" p; @# f- Z  init(in);2 P9 r8 @! f1 z0 _
}
+ D6 D* L' w4 K4 o& X/ ]0 t private void init(BufferedReader in) {. u+ e0 T# C3 l8 V$ h2 K
  try {
9 }3 ?9 L4 Z- z8 ?6 U; ^* b4 c9 r6 @" M   String str = in.readLine();
; l* @& R! g( ]+ B8 x   if (!str.equals("b2")) {
* d) F$ S) [- c  P6 R6 B; G2 W    throw new UnsupportedEncodingException(& q7 ?7 y1 j( x! J6 v9 V5 _) s, K" L
      "File is not in TXT ascii format");: g* [0 u; @: l4 S2 c' S! F
   }: X: x- o5 E, v+ Z: d5 |  ^
   str = in.readLine();+ S! W* i' }! i3 o. e, e
   String tem[] = str.split("[\\t\\s]+");
: w4 W' d. m8 _% y/ k& _9 X   xSize = Integer.valueOf(tem[0]).intValue();$ r9 n/ d' k- q) S8 c# k5 y: E
   ySize = Integer.valueOf(tem[1]).intValue();
. [7 m0 [0 A+ X: T( G5 ^& r0 j* y+ R   matrix = new String[xSize][ySize];
9 G* Y, C# x1 n/ v) T1 P8 `   int i = 0;. w0 {  L% H3 C
   str = "";
# ~) u( s6 ?$ o# F; ~  U/ I/ I   String line = in.readLine();3 k- \5 k, q# D. @) i' T+ y. a
   while (line != null) {
" Z6 q' k% O! Q9 _" @    String temp[] = line.split("[\\t\\s]+");
* _; y; V& B6 ~3 k    line = in.readLine();
# x7 G& M. r: E; F( [6 y  d  f0 J    for (int j = 0; j < ySize; j++) {
5 I. a& N3 B* D) ]     matrix[i][j] = temp[j];1 k  d, D, C# A
    }0 h7 H/ {6 m0 e$ E0 `1 O+ {  }
    i++;
# R/ J+ x4 e6 d: l. m+ G7 v   }/ |/ P# V( u' _* C7 |1 s! {$ e
   in.close();( W: V% l1 M# {, ^9 n4 \4 U1 ?
  } catch (IOException ex) {0 V3 b8 d" r) l+ x1 z1 A, ~' o$ ^( B
   System.out.println("Error Reading file");' ^! u! k) S, S. ^
   ex.printStackTrace();
: D3 u8 T3 |; R2 S5 ]   System.exit(0);; ?  `' ]3 q4 ?5 @
  }
4 y; ~5 b' x. g4 _6 U( A }7 K  i9 q; i' b5 g" W
public String[][] getMatrix() {6 y8 W; V% V3 L: p; `
  return matrix;
( b& U6 h5 e. x2 {4 s0 P }6 e! s* K, T# {0 I( i
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-25 10:00 , Processed in 0.014846 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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