设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6182|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
( E6 [; D9 T* c* R" k1 wimport java.io.BufferedReader;
. ~2 w+ `$ E9 U% o3 ^import java.io.FileInputStream;, Z0 {$ c3 _" r7 N+ q
import java.io.FileNotFoundException;
4 v6 G. }& B2 cimport java.io.IOException;
0 c6 K9 w: R9 ximport java.io.InputStreamReader;
. c& K0 C' {: M  T' b" Q; }: d( d/ ]  bimport java.io.UnsupportedEncodingException;
2 x! P3 q) h- U: x* y& I$ s; Zimport java.util.StringTokenizer;4 M7 U0 h, r  b2 P: h) f
public class TXTReader {$ a" }* q" C) [7 l- {' {: `% a
protected String matrix[][];
* p3 {; W* Z7 K: l* H protected int xSize;5 d; a# n5 v4 t" `( U# O
protected int ySize;
) h* z- E8 W5 Y9 [2 j public TXTReader(String sugarFile) {
# p$ ]4 _: z  T+ J, I- D  java.io.InputStream stream = null;
# g1 o9 U$ m- I9 C4 f7 E+ X  try {
/ \8 J- h+ }4 m- b; r   stream = new FileInputStream(sugarFile);
$ H( q4 V8 _: X: V3 d  } catch (FileNotFoundException e) {# C7 g8 |& \9 F" [+ D
   e.printStackTrace();
" a/ V: ?: S' ?+ J" s  }6 E3 p' S# y8 f% }4 [$ f
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
5 a% S# Y) j) i( R5 L! u/ j& x  init(in);5 h1 h/ X! B2 N% n2 P( N  X& @
}
, n2 n3 [/ a" Z  h7 V  W private void init(BufferedReader in) {
, Q/ w8 Y5 @9 ^4 V  N8 t6 S0 o$ J  try {/ X1 j1 n7 n5 I8 K* R/ W* |
   String str = in.readLine();) z* W" z, z0 ?& A
   if (!str.equals("b2")) {
6 ~' M* M$ F6 R    throw new UnsupportedEncodingException(& d' x* M+ Q1 D) c
      "File is not in TXT ascii format");* ~$ k9 _2 ]$ Z5 Q0 I* Z$ m! E
   }. \9 g0 T* _( {) {" h
   str = in.readLine();  `- D' D" v& `/ r- `: t
   String tem[] = str.split("[\\t\\s]+");
( L/ ^5 g# G' n1 _0 Q   xSize = Integer.valueOf(tem[0]).intValue();6 [9 S* x' A% Y4 E' j) f
   ySize = Integer.valueOf(tem[1]).intValue();# @" K  l& U3 m. Z! F
   matrix = new String[xSize][ySize];
6 g! `% w$ c6 N# n$ l6 Z- _) y   int i = 0;
* `7 R6 `) N; z+ H1 e   str = "";
/ U+ P. Z0 o: r! `9 q; H   String line = in.readLine();0 x: N8 L2 u/ o8 M" U
   while (line != null) {* X# x: r$ h5 z& P
    String temp[] = line.split("[\\t\\s]+");
* ]  E' B$ m7 D8 p    line = in.readLine();- h5 G3 a3 g/ @8 k+ k9 c
    for (int j = 0; j < ySize; j++) {* q3 G  K  _3 [4 m. A* s
     matrix[i][j] = temp[j];6 Y1 {" U2 E/ B
    }9 ^9 r$ S8 ^1 I2 K. H! S
    i++;
/ ]. l1 [0 D  R2 N% T* N, ~, Y& R   }7 ~/ l8 l7 j4 D) I6 f, P
   in.close();2 j& S0 y2 g; {$ f0 n# R8 y1 O
  } catch (IOException ex) {  [- \5 X: p( o( w
   System.out.println("Error Reading file");
! k0 b9 O. B' }: B+ j   ex.printStackTrace();# m, r2 B; T8 c8 y. L% g% g$ V
   System.exit(0);4 [& L) V/ W  _! t: C1 ~( n$ y8 ?
  }
4 O1 s8 a2 D" T1 m# _- [ }* |5 r( m3 m& e( `8 J& o; j- p  @
public String[][] getMatrix() {: ~9 r  I+ B. H) F4 N# N
  return matrix;  U* l- O7 L8 O4 t
}( p2 }# O! y+ B$ M% J7 q2 f
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-15 04:50 , Processed in 0.014196 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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