设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6873|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;& f7 S- u( @- T# b$ ^9 R
import java.io.BufferedReader;
. O6 l# V4 N4 Ximport java.io.FileInputStream;  }* M/ A6 ~- X! x* h8 E5 u. F
import java.io.FileNotFoundException;( n3 y% _# c  m& c
import java.io.IOException;9 |0 ]1 s8 P2 q4 m
import java.io.InputStreamReader;& q2 c0 O9 l% G5 @4 I) V# e
import java.io.UnsupportedEncodingException;% U+ k2 v) B# M5 \- {" q
import java.util.StringTokenizer;
7 Q4 f$ t% `3 J! k" T3 ipublic class TXTReader {
. Z+ ]3 |' Q. k$ ^ protected String matrix[][];
3 R* Z, G* Z7 w protected int xSize;  U! V7 L$ c0 z6 F' R
protected int ySize;1 H8 l1 d: ?8 [* ^- h/ ]6 Z
public TXTReader(String sugarFile) {
/ t( I  R! T# L% A% B- |6 X  java.io.InputStream stream = null;
$ Y# y$ i- |! K/ e" S" `! \  try {$ v  J2 i0 @4 z- W8 E. R- ~
   stream = new FileInputStream(sugarFile);
/ H( g9 J4 x7 s+ R$ Y) n, K  } catch (FileNotFoundException e) {3 u* T9 {; G8 }6 k  `$ ~4 L+ |
   e.printStackTrace();& G% _2 X; @3 D* Q* [" J
  }/ P# H; d9 N0 g' F" G2 F; o& ~( f+ L
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
6 g/ P: |) b( P, B5 @  init(in);
6 N* [' e1 a* U' h }
2 t# T& V: N+ }6 S& _" [1 q  N0 k9 @ private void init(BufferedReader in) {
" R* u) N7 `# {& @  try {
5 K% @5 o9 B- Q5 l+ H2 ^4 d5 {   String str = in.readLine();6 P8 e: ~' S" ?. E. {3 \* N
   if (!str.equals("b2")) {
! n. r) k* K& F$ Q6 K: G9 U    throw new UnsupportedEncodingException(  k. K1 F- K1 u4 D
      "File is not in TXT ascii format");
/ d8 {( H) h. \) G( w. m* p   }
% T4 e' E& ^6 e5 k6 a, m9 F' `   str = in.readLine();
4 y& r& s& \8 Q* i' q   String tem[] = str.split("[\\t\\s]+");
3 u- [* p' n4 z- I! i9 Q. B/ K   xSize = Integer.valueOf(tem[0]).intValue();
: ?2 f. o7 l) E: m   ySize = Integer.valueOf(tem[1]).intValue();
0 P# Z( X% n% w2 s: d2 F* {   matrix = new String[xSize][ySize];
" A/ Z8 ]% G& y. F4 p( K# Q4 e7 D   int i = 0;
4 J/ g  C9 a! U+ y3 X) v+ q   str = "";
- I% c5 l) A/ K   String line = in.readLine();
  A- v- g' [. m6 b& C   while (line != null) {
/ d( }# L' T& ^- G7 L7 Y  w. v    String temp[] = line.split("[\\t\\s]+");
' v, z; ?5 k. l# E    line = in.readLine();
: c/ \& u3 S2 l7 e2 W$ i    for (int j = 0; j < ySize; j++) {
: ?  u4 S! {4 j/ m' T0 h     matrix[i][j] = temp[j];7 ]( I* _/ b/ `7 d
    }
" x$ L# c, p5 `9 p( s$ y- ?    i++;/ t6 q/ t+ o8 {/ J  N$ O+ G% H
   }
2 A) W( x. e" ~   in.close();/ I$ R' t* U7 Q# Q
  } catch (IOException ex) {2 ?# Y  f" J. s$ G; c% P
   System.out.println("Error Reading file");
% _7 Y' [+ _* y5 s8 t   ex.printStackTrace();4 }  I* P* g' C: U4 H8 u5 U2 O
   System.exit(0);
# O, e" ?9 A; x6 i  }( M0 N: n1 A1 w0 r. r
}% w; H/ w/ K( F* L
public String[][] getMatrix() {" M5 i/ ^  _% Y9 i) P1 v8 t6 T$ C4 D
  return matrix;+ a- W; |$ O# F+ T( x+ o3 ~
}. |' l1 [4 X8 K. ]- g
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 03:12 , Processed in 0.019841 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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