设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8649|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
; w/ x2 E- ?5 C' j1 s( k( \import java.io.BufferedReader;
& s% r+ p$ h' Z4 Fimport java.io.FileInputStream;
, }3 D% W5 l+ j& D6 t) r" jimport java.io.FileNotFoundException;0 S' b, `7 q( U2 b, q3 F1 G7 S+ k
import java.io.IOException;
2 Z2 y. q5 |# Y$ ximport java.io.InputStreamReader;( M" y! p; m6 U: Y0 {) G1 ?3 M
import java.io.UnsupportedEncodingException;$ a7 k, j% P& j0 q9 J$ F
import java.util.StringTokenizer;
  Y. e) l* {, z0 ~' Apublic class TXTReader {
! }! O5 d3 y6 Z) [) H3 K; R: a protected String matrix[][];  |8 R8 T% |+ j# n* A- O
protected int xSize;7 w* M" \" p8 k# o6 J
protected int ySize;; I5 D; |1 Q% R) o
public TXTReader(String sugarFile) {8 d+ [* d2 p, R8 ~. M
  java.io.InputStream stream = null;# c* h3 u6 _, h; ?0 m) A- f  p
  try {
, Z% y* a) D$ K- j9 X   stream = new FileInputStream(sugarFile);5 X/ I" q/ u3 p- F) n7 E/ r
  } catch (FileNotFoundException e) {) [3 \3 Q1 j5 Q( m
   e.printStackTrace();2 `) m- G& L) v( @1 |
  }+ H( |: K: V+ u5 C9 z
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));. x& t" D7 g& B
  init(in);$ i) E  i1 z5 n) K
}
9 C9 m, Q# S, s6 ?  [ private void init(BufferedReader in) {
4 O* K- S  B2 r9 m& y  try {
; d; H- \! o* o! d6 U0 n' ]   String str = in.readLine();# m( ~2 {7 l# X) r: h, `4 l
   if (!str.equals("b2")) {
6 C$ e# [  y# ^( }7 k    throw new UnsupportedEncodingException(! ~& E% Y7 F7 R, M* U! r
      "File is not in TXT ascii format");; ^4 }. r( \" d8 v) n& m
   }
7 o4 [2 Z9 j6 Y) O# k   str = in.readLine();) r( i+ a- l! B6 P* _1 O
   String tem[] = str.split("[\\t\\s]+");( ^% T' I/ F- @/ k, D: L: J$ z
   xSize = Integer.valueOf(tem[0]).intValue();
. y0 u8 h2 x4 X6 V   ySize = Integer.valueOf(tem[1]).intValue();. w, Z" x9 r+ Z' X3 E& U
   matrix = new String[xSize][ySize];# t2 {( `$ x" \. Q
   int i = 0;
5 l* U! k* O+ D# J! E' R1 c# h   str = "";- t9 R3 G+ M$ d% @
   String line = in.readLine();
  K% L1 w/ r3 x- y  M# Y5 u   while (line != null) {
3 I5 q2 _2 ]( `; {1 X' t- P    String temp[] = line.split("[\\t\\s]+");: F: |* o* _3 N8 o0 n0 B7 @8 ^# O
    line = in.readLine();
* e* ?4 k( |1 L9 o  j( n; e% K    for (int j = 0; j < ySize; j++) {6 i# D  i/ Z" U# u  ~& L2 V1 T
     matrix[i][j] = temp[j];
7 d/ Z) t* a# C: D    }
3 \3 b, S. z, U    i++;
: B7 p5 z- Y  a% {- k( X. O   }
; u' q' F/ L1 M   in.close();. @# o/ {% A# Z+ r3 g0 M9 o) |# y
  } catch (IOException ex) {/ a: ]2 L' i: U
   System.out.println("Error Reading file");
* ~- i+ O' Q' e: Z8 D& }* e   ex.printStackTrace();
, Q) c* }" e$ ?3 n   System.exit(0);
8 d! I" _* C: C+ c# |* N  }+ [8 g9 {+ q; v: Z6 ?0 `
}0 B: q4 A/ s6 ?: l1 v$ d3 {0 q+ J1 _
public String[][] getMatrix() {: V9 X2 E1 P; q4 |
  return matrix;
* P* _5 j5 T% b. l- D/ k- b }
: b/ V6 i. n4 F0 F# c4 c  ~9 z# d}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-5 05:53 , Processed in 0.013868 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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