设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8053|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
2 L; i* ~# Z( Cimport java.io.BufferedReader;
/ W3 U% I/ W6 L8 X; y4 Cimport java.io.FileInputStream;1 p# |- C* E) q$ {' Q+ A! s1 W* ^
import java.io.FileNotFoundException;' ^! g% X7 }) K5 D! R
import java.io.IOException;7 X1 t6 n3 A: A1 M
import java.io.InputStreamReader;; C3 |; _7 c+ w
import java.io.UnsupportedEncodingException;+ W7 g; i4 a, g+ u
import java.util.StringTokenizer;& a1 D" _- T& E/ B/ `# R
public class TXTReader {  A$ v; n* V4 y4 s7 i! E7 P
protected String matrix[][];
! L$ b" E6 h$ G% ^3 } protected int xSize;, |5 z% \) b6 o' m8 c
protected int ySize;9 \5 t4 g; u3 z: d: k! @6 z
public TXTReader(String sugarFile) {
9 x" Y6 o. N0 u- |" n4 s  java.io.InputStream stream = null;+ v  r& M/ [% x/ s: i( X
  try {3 m# |0 h/ }2 q) E8 r- q
   stream = new FileInputStream(sugarFile);- w* O3 r( ]* T! z6 g* t/ V& k
  } catch (FileNotFoundException e) {# f3 T- N+ }& M7 ^; ?3 b' d
   e.printStackTrace();
8 c1 T' @9 o- Y) ~: H  }6 ?& s# s+ g7 n" n
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));% r1 N# b5 M/ h2 x
  init(in);
( {3 ~' I; E# E" E: D }. t* P. I( Q; b
private void init(BufferedReader in) {* g2 v3 z* a/ x8 j
  try {
  {# i; n5 _# j. i   String str = in.readLine();
+ t# Y* k5 M2 \2 H1 m   if (!str.equals("b2")) {/ U+ j+ T! h  ?6 o) B: _# T  w5 M! j
    throw new UnsupportedEncodingException(
3 t2 G+ \' s. R      "File is not in TXT ascii format");
7 h7 t% M+ o$ F" V+ a   }/ m! ]4 `: n& E# v4 `
   str = in.readLine();
& X$ c; P5 O  ]- k& o! L( B   String tem[] = str.split("[\\t\\s]+");
# r# n( O3 Q$ o$ {, Q2 u! z: O8 m8 D   xSize = Integer.valueOf(tem[0]).intValue();+ {( i  l0 ]) f9 x# o& O
   ySize = Integer.valueOf(tem[1]).intValue();
  w, ?9 Y4 r! J; x6 r: r   matrix = new String[xSize][ySize];
! t1 x# v7 c: v7 |3 Y2 }4 A2 b   int i = 0;) T- Y% z0 [& S* h% Y
   str = "";
) `) i* ?9 c/ q( S9 P  e' }# x: r   String line = in.readLine();2 I+ y2 D3 f. B3 X2 \% I
   while (line != null) {
, f0 B, A+ l* B' m    String temp[] = line.split("[\\t\\s]+");
5 }; {/ u, f! T1 _4 D6 t5 a    line = in.readLine();
" l* S! }( G. H- y    for (int j = 0; j < ySize; j++) {
9 r; ?/ L' p9 j     matrix[i][j] = temp[j];" J1 T' z/ C( J/ j
    }% O8 q) [0 L1 F; o) p# R; O
    i++;5 o0 s; C. I8 j' T) z$ V; S+ z
   }. p& ~, m  ?; b& _0 L3 W0 x( K" r
   in.close();
! A% H  j# M; j) M6 a: N  } catch (IOException ex) {
$ f) l3 O. X! \, P   System.out.println("Error Reading file");# V0 ^5 ~0 h/ q- e4 l
   ex.printStackTrace();
& F6 X# S6 Q. {, g6 A% f   System.exit(0);
8 h, J" n7 y2 B# d0 L' u7 c  }* m5 B8 q( ]0 W# V
}
2 J  G9 c; K. y& s% S1 j% H public String[][] getMatrix() {% \3 H" s% ^" @  B/ f
  return matrix;# E# [! ~4 g0 L: e) L
}
( K7 g5 @2 v% S}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 19:01 , Processed in 0.018685 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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