设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8716|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;( Q) ]& V, h% h7 U& Q  {
import java.io.BufferedReader;( t" B: E' n6 ^
import java.io.FileInputStream;
7 U3 p0 V2 S) H# q( }$ }import java.io.FileNotFoundException;
9 \4 A; r/ d( Oimport java.io.IOException;0 [3 ?2 Y+ x% x$ c; x' [! W# _
import java.io.InputStreamReader;4 m; v& u9 N% S3 ^
import java.io.UnsupportedEncodingException;$ F- d0 J& i, d8 y7 m* P
import java.util.StringTokenizer;; n2 M: V% e/ U6 K7 Q* @
public class TXTReader {9 G' l% e- |5 q8 M! ?' O1 M
protected String matrix[][];
4 V6 G1 l0 U" \; ~1 W protected int xSize;, f1 ^$ L, M3 X$ r2 x% k4 x4 t
protected int ySize;
% n6 q+ C% ~; g! `. i! k public TXTReader(String sugarFile) {
, A' t5 Q+ n7 }7 k" h  java.io.InputStream stream = null;# T, E0 t# s) L, O9 |$ |& F! h# e
  try {8 d) P4 L5 C4 N4 P; }* U) F
   stream = new FileInputStream(sugarFile);  v: q( T( |, t
  } catch (FileNotFoundException e) {
( t7 s8 t0 P+ l  h" m   e.printStackTrace();
/ w3 p7 x: K0 A+ m  }+ j( J% q/ h8 {+ p& N/ m5 x
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));' C  e$ y3 e- X. [
  init(in);% S, M/ O# U% M9 d* s( ?
}* N2 e7 ?; x: H/ t4 k5 G) r/ j
private void init(BufferedReader in) {% h( ^4 L' H8 R2 o/ T  k# y: M
  try {
. A% c- L1 r) R& o7 s& i$ @   String str = in.readLine();
) j  P8 p. y9 f& o% g: Q   if (!str.equals("b2")) {
+ v0 t+ W  l/ ]    throw new UnsupportedEncodingException(/ m1 i( h! X3 D" v: N
      "File is not in TXT ascii format");, m$ q: I$ V7 B' D3 X& \% l! h
   }2 m1 b( x# E1 _1 x: b% U
   str = in.readLine();( s3 u/ j1 S  m7 l5 T
   String tem[] = str.split("[\\t\\s]+");0 H$ }! r7 r& J3 n
   xSize = Integer.valueOf(tem[0]).intValue();0 M0 a  q3 F9 O9 Z+ p! B
   ySize = Integer.valueOf(tem[1]).intValue();) u! l3 t4 @; `+ L
   matrix = new String[xSize][ySize];1 e' w8 ^1 A) P# h: D$ r2 V& I1 V  D
   int i = 0;9 }1 R& s# \7 a; |4 C
   str = "";
0 Q) B5 x0 `  v( [9 I   String line = in.readLine();* h! V4 m  k  R9 E
   while (line != null) {( Y) A6 _& O% e9 r1 q. [8 Y* [
    String temp[] = line.split("[\\t\\s]+");
; ~5 W- [0 }& y) Q    line = in.readLine();: e/ o+ Y& Z8 u2 S& }! _6 M
    for (int j = 0; j < ySize; j++) {
4 q0 u# G/ c. t! V     matrix[i][j] = temp[j];
3 y1 e  M4 `: [* z7 b4 }    }! D: n( \4 S, \9 ~) W8 p. G
    i++;, a4 q* t! V* w( n6 g
   }
: _) J6 _6 C; m  i8 ?' I- p   in.close();8 q' _4 B4 ^4 M) {( r# N/ I
  } catch (IOException ex) {# U5 G3 a2 s: K3 J# i" o0 T0 }
   System.out.println("Error Reading file");* l: I# ~8 U- L, ~; O+ d& p( L
   ex.printStackTrace();/ D' D6 ?2 x% p5 V$ W: j/ K' Y
   System.exit(0);
0 K( I8 w) ?' ?3 I; O# }1 B5 p: o" L  }( C0 n  V# s  X% ~6 B( m: a
}
$ R$ H% R. A! u; \$ c& Z public String[][] getMatrix() {
& g+ W+ E2 v0 S8 I$ I1 M  return matrix;
9 d# ], i) e$ ]* O& s, F }! n4 F3 @) [1 b" p/ q6 Q4 Y8 V+ ^/ R& D
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-9 02:09 , Processed in 0.016428 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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