设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7180|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
  F3 a$ \& C, ]- Z/ \import java.io.BufferedReader;# i: W# F7 r, g- Q9 P
import java.io.FileInputStream;
# u* {$ v) u& g. K+ L- Z  ~import java.io.FileNotFoundException;
% T! r3 I4 s8 t% C: Pimport java.io.IOException;# g- K8 }- d; R! n" f) u
import java.io.InputStreamReader;; I- z% f, m+ c$ s# t
import java.io.UnsupportedEncodingException;% I1 Q: @4 X2 g) r9 U
import java.util.StringTokenizer;% d3 C2 i' s+ c9 Q2 \! C
public class TXTReader {& r: I& X9 ]( X+ U& ?- P
protected String matrix[][];
9 z& p9 I& U' ~3 E6 m4 } protected int xSize;6 U+ F2 y: B" s. [  I, N( ^
protected int ySize;
; p8 T; }  {8 c% J9 B3 ~ public TXTReader(String sugarFile) {
+ \" t, x  n" s! ~. t; N3 k! ~0 Q) j  java.io.InputStream stream = null;! o9 V; S4 J3 A4 t" @+ ~( f" q5 j
  try {% m1 g) A0 W/ P; i
   stream = new FileInputStream(sugarFile);
4 n; [+ K( u. [, b  } catch (FileNotFoundException e) {
' W5 D4 n: I- n   e.printStackTrace();
. f" H; @  u. l  }8 D1 ?  o" o/ l% Z1 p8 t' d* ^
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));8 |8 E- y7 n) v9 ]! X7 G4 e
  init(in);* P7 Y/ f) X+ p9 O, a3 o5 @# C
}6 E. Y& t: C( |3 W
private void init(BufferedReader in) {: V( ~) `. H9 _" ~  Q
  try {
) H1 T8 Y$ R/ x' V1 l   String str = in.readLine();
$ D5 K4 Q8 r' r% G0 H' s! N+ K- |   if (!str.equals("b2")) {; a  \, w7 q% P. D
    throw new UnsupportedEncodingException(
2 w* m5 W; t$ l+ c      "File is not in TXT ascii format");
) f5 ~" ?' U( n" V- P+ [' _   }" \% ?0 O5 j% R$ K0 \
   str = in.readLine();: w; v5 y, j* r% t
   String tem[] = str.split("[\\t\\s]+");. P) i! \  |- Q# Y% U$ B2 V+ A
   xSize = Integer.valueOf(tem[0]).intValue();
2 k* k% F3 v* L  J  j3 _. i   ySize = Integer.valueOf(tem[1]).intValue();5 @, {" e  Q  M! t8 `
   matrix = new String[xSize][ySize];
% [, X3 h3 I8 `9 E' p+ \' {5 g   int i = 0;
/ X: Q9 F5 A4 N+ I" u& Y   str = "";
6 d& R: [2 O; @. I6 w   String line = in.readLine();% G6 [! U1 n7 `8 @: A% S  E
   while (line != null) {
- S2 y5 }; h$ u    String temp[] = line.split("[\\t\\s]+");
* p$ k& s' w% s! ]7 x0 s' n    line = in.readLine();
$ G: ~7 z# u8 @; @$ y& [    for (int j = 0; j < ySize; j++) {
2 S2 c. Q- d3 |, P  q: O3 h& I     matrix[i][j] = temp[j];  H3 g/ r  b% F
    }
- |/ R9 ~; V1 L) ]7 h    i++;% }$ A# H8 S. D5 k3 }0 y
   }5 I4 d* A( w  {9 ~5 I: Q3 `* i1 N4 W
   in.close();
: n6 e- |  z- [5 X# u  } catch (IOException ex) {
+ e$ u- m1 G; i5 }$ x' r   System.out.println("Error Reading file");
9 J) f0 o) {9 m0 @" ~( e   ex.printStackTrace();
' E% F) l* j. j, u, d$ k% u   System.exit(0);
: G+ E% ^- p+ x- h  }" Q! u5 {7 v% Z6 d( y/ t
}5 K' c6 O6 A8 |6 |- Y
public String[][] getMatrix() {
1 A: T( C$ R. b2 O* m  return matrix;$ Z8 o% A% r0 S  ?' z3 |* G: o) z
}
' z  c9 w8 g# N}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-26 06:10 , Processed in 0.015696 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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