设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9810|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;* P( k% M  s2 T; U
import java.io.BufferedReader;1 D, I! ]( x8 ^/ [* z
import java.io.FileInputStream;2 i( V' Q! j0 {* v) `) W
import java.io.FileNotFoundException;0 i* T: M# M  t; ?
import java.io.IOException;; U) O4 w2 b1 X- l
import java.io.InputStreamReader;
2 J. i" W! S6 q6 L! S8 l+ limport java.io.UnsupportedEncodingException;
, s0 w, z- p/ a! h8 W0 ~1 Vimport java.util.StringTokenizer;
/ ?( e8 b4 k! Qpublic class TXTReader {
9 \- u/ c# n# C/ \2 Q1 w protected String matrix[][];% @9 `" b$ A( w' \  `
protected int xSize;
9 ]4 c! G8 y  w0 t$ @ protected int ySize;3 l4 K9 }, ^$ o# v- S4 w
public TXTReader(String sugarFile) {
5 f8 o5 S7 \) a7 P2 Z" b! P2 m8 b  java.io.InputStream stream = null;
) V& M1 G2 Y8 p9 T2 O  try {! b8 z' y. E% n
   stream = new FileInputStream(sugarFile);
) E( ^: x% ^  |' i  } catch (FileNotFoundException e) {9 i- B- j; s* M+ ~4 {" J# k
   e.printStackTrace();
% q9 B: J6 T. ~' N, I* \2 \; B  }
" m, i: s: ~) c' w0 I$ {  BufferedReader in = new BufferedReader(new InputStreamReader(stream));% d6 g6 \/ ^% e" w, i. u/ I
  init(in);: D. |! r2 ]4 l  B1 R
}% ~8 T/ q# d' l' V! n& m2 S' |
private void init(BufferedReader in) {
- u( F/ }. g/ w! v' S  try {( E5 w  x; X7 W7 h
   String str = in.readLine();
4 M. o+ v- B$ Q5 d. ]; E   if (!str.equals("b2")) {% e, j" h' W) z7 F7 ?  A& }: }
    throw new UnsupportedEncodingException(
- b  S' q* l: u      "File is not in TXT ascii format");
% S0 _" S. d5 @3 _2 G; C& W/ W   }8 Y4 X* j7 Y# Y- ]  Q0 T, W
   str = in.readLine();
( M/ q7 }; z' I- b, F9 ?   String tem[] = str.split("[\\t\\s]+");
; ~0 C7 g9 ^8 i, l4 B  s   xSize = Integer.valueOf(tem[0]).intValue();0 K3 K1 a9 e% ?  t+ E: j; C4 {8 B
   ySize = Integer.valueOf(tem[1]).intValue();
3 G% G+ M" U; F% K   matrix = new String[xSize][ySize];
; l4 J  p1 ]" U, }. C7 f7 Z   int i = 0;
/ @, S  d/ E" S( j$ v   str = "";0 O% \5 Y- A) d
   String line = in.readLine();
3 s, Q5 ~( s- M5 U9 y# m. r+ d   while (line != null) {
$ U, R+ S6 |4 F# T3 S$ V* v    String temp[] = line.split("[\\t\\s]+");2 V2 T3 I# H" v8 o
    line = in.readLine();
$ l5 ^/ f) W2 e, b6 f    for (int j = 0; j < ySize; j++) {# u) ?( o) R, m- t7 }9 w; T
     matrix[i][j] = temp[j];
! X, L2 B2 _. ]$ @& u/ c0 R    }
0 q1 R# }6 t' u9 K; ]% e    i++;
3 q+ B! m7 b5 [7 u8 U" u4 n: q   }
7 F1 ~* a" \0 h   in.close();
: V  [; m8 \1 f- j/ d& X9 V9 V  } catch (IOException ex) {
( Z7 u$ U' R( F   System.out.println("Error Reading file");
/ n* n4 _( s% H. T   ex.printStackTrace();% v7 O* b- ^3 y2 t! Q! o- j0 T5 b
   System.exit(0);) t; b2 |' |% q- j7 S
  }
( c/ h0 E" u' |9 c8 B2 I: k9 x }* T% o: U1 R" b/ c! m
public String[][] getMatrix() {
2 O0 ~+ N* R& ~5 }  return matrix;3 k* W9 W' M$ W  x
}; ~7 r: C: p) \$ \; J
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-5 08:10 , Processed in 0.012123 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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