设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6981|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;7 ]9 N/ j2 I% D, I& |
import java.io.BufferedReader;3 r8 q6 M/ F( h. E; s0 L, `; \1 ]
import java.io.FileInputStream;$ K; e5 ^5 W, p/ f" {
import java.io.FileNotFoundException;
0 X8 U+ a9 W, v( `6 qimport java.io.IOException;
: }# f, a( i' L0 Limport java.io.InputStreamReader;" H0 x" C' j) f# ~
import java.io.UnsupportedEncodingException;
/ n5 t9 m- S; {! |: yimport java.util.StringTokenizer;
; G8 F, k$ J' U' Y5 h( Zpublic class TXTReader {! n  {. D1 @( [$ S6 G8 d
protected String matrix[][];
, a& z0 R% S& M8 b+ W+ q protected int xSize;' a' V5 ?2 `: o( g+ h
protected int ySize;: m* y/ v* i5 ^( n
public TXTReader(String sugarFile) {
) [; l& a9 N* k0 a  C) t  java.io.InputStream stream = null;; f1 p; k  O6 N
  try {( h7 H' b( @  M* H7 c
   stream = new FileInputStream(sugarFile);5 _& g" Q! E4 i! n: A- R
  } catch (FileNotFoundException e) {
" M2 Q) W% V: D! l8 B& |2 S# C2 h   e.printStackTrace();$ Q+ Z' z0 M. N& O
  }+ U$ s9 K5 K' w4 Y4 \4 P# g9 P4 w
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));$ W: s+ y1 ]# U; ^  y3 D; ?
  init(in);
+ m% }) j% ^+ i8 p7 z }/ s$ U8 d! d1 |% O8 z- Y
private void init(BufferedReader in) {
  s9 b; f9 c% l; P- i' _  try {
2 ?) U  x% i( }8 d/ s% ^9 L% M   String str = in.readLine();1 h5 j2 l+ o5 q
   if (!str.equals("b2")) {$ U6 V0 ?. i8 \( T$ [: j: w( X9 X
    throw new UnsupportedEncodingException(; j( |1 {& ^; j$ j3 ~8 @8 b
      "File is not in TXT ascii format");3 v$ Z$ Z/ C) Q, P  X
   }
* y1 S' @" O6 Z! g8 h   str = in.readLine();, ?4 V. m( T. N3 h
   String tem[] = str.split("[\\t\\s]+");
- v5 Z- v# N9 H* c6 m   xSize = Integer.valueOf(tem[0]).intValue();* S1 G9 q- @  J, U  ^
   ySize = Integer.valueOf(tem[1]).intValue();
2 m- P& x; q) D! e& X! L   matrix = new String[xSize][ySize];
# u3 Y9 v# E' R* n( G6 q9 n$ @   int i = 0;8 J$ }8 @0 [* k+ W5 r" h* c
   str = "";) \. v/ i6 C9 J" r, U3 w1 S1 e
   String line = in.readLine();9 ]$ W7 m$ {  F, N, g1 f
   while (line != null) {" q% r0 m% T: q# K
    String temp[] = line.split("[\\t\\s]+");
3 Y( {" S9 @' q; [    line = in.readLine();2 G7 G5 Z/ c# A) [, {) p2 G+ A. K
    for (int j = 0; j < ySize; j++) {
3 a) N1 Y8 I8 U6 K. r     matrix[i][j] = temp[j];" I6 G& h9 l, R7 v( H; i0 N$ N: p
    }+ k# A$ W2 V( p, c" }! \
    i++;/ k/ g# f' I! a! R+ i& m" @
   }2 m. x: y' [3 P" b
   in.close();
4 Z: w* H+ J( Y7 r# r; M, Y  } catch (IOException ex) {8 E2 a3 x5 t( O5 ]$ u
   System.out.println("Error Reading file");
+ X4 q- l+ _/ \# O: C' R$ X! R  B   ex.printStackTrace();5 o, o+ y8 }3 _6 W: f# m
   System.exit(0);: p& V; _9 q0 p: q- E2 _) a1 d2 {( D
  }5 h3 t9 ^2 H" @
}$ r) ^; b- k: B& J! \6 L1 J) z# ?
public String[][] getMatrix() {8 D9 k5 ?- `  q" Z9 D
  return matrix;+ M2 E6 s5 E; W/ h, h0 I- {( T
}& s( J$ `2 w) P( R
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-13 19:42 , Processed in 0.017669 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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