设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9008|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;; l/ p2 X; k. x9 v
import java.io.BufferedReader;
- b# Q4 I( Z% `import java.io.FileInputStream;( V, Q5 j! e; h% q- x/ c  ]! j
import java.io.FileNotFoundException;1 l8 X- h: D, S9 d
import java.io.IOException;
5 c. W; P, t: g$ s' e# I0 U& Dimport java.io.InputStreamReader;
  Z& a$ h! ?# Z  x8 eimport java.io.UnsupportedEncodingException;) q$ ^9 q4 i. k
import java.util.StringTokenizer;4 s% Z. L9 z# h+ r2 w' q7 E
public class TXTReader {$ R7 I( w9 Q1 h  m
protected String matrix[][];( S  l$ e: ?- J2 Y6 A
protected int xSize;
' j+ h( @- l* ~' r5 `. V) M% H9 k; t protected int ySize;) @+ Q6 i& f3 x: N# S( p; o
public TXTReader(String sugarFile) {! O; Q8 u1 Z1 G6 y
  java.io.InputStream stream = null;) ], c0 g* P( F4 P$ Q
  try {- Y; A6 j) T% v2 c; a' k+ L- N
   stream = new FileInputStream(sugarFile);& I$ y* G: Y4 v0 F
  } catch (FileNotFoundException e) {
. ]  |* i3 }# j; A0 E+ `+ l   e.printStackTrace();
. \  i# C9 \* p8 [  }) Y" b. K7 F" z$ f# g4 M/ g6 x* l
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
7 O$ R* d+ |& T) u5 G5 |) P  init(in);
/ _9 B% f1 \+ X2 F, T& }, L }" s8 y+ q- c9 K% t" `/ |
private void init(BufferedReader in) {
) c! b, ]6 q2 W+ e% A8 ?& G" }9 g  try {7 F0 K2 G* E: H! B; O! d( ]: u; l
   String str = in.readLine();
% }5 ~' v. L7 S0 ?6 H   if (!str.equals("b2")) {
4 O$ ^1 y% U, {: U    throw new UnsupportedEncodingException(
! C& \, e: v! M$ R      "File is not in TXT ascii format");
) Z: T1 y- R; m. X4 O( k   }
4 t: \+ ]$ h7 F+ c' \. e9 B   str = in.readLine();8 S2 e' S( N6 O  n  k
   String tem[] = str.split("[\\t\\s]+");7 I0 P8 e) h  x' e
   xSize = Integer.valueOf(tem[0]).intValue();6 X" Z9 A" U5 l3 u* c
   ySize = Integer.valueOf(tem[1]).intValue();' C) E; |: ^, n8 @" k1 ?- `
   matrix = new String[xSize][ySize];
7 V" ^5 x' ~9 V" c7 j0 o   int i = 0;& @% R+ b1 `+ b2 V! Q
   str = "";
6 P2 |8 x& R. B8 U1 M   String line = in.readLine();4 D& v) t- ^( O/ }0 i) m: b
   while (line != null) {1 z: Q# O  n; K0 q) H# g
    String temp[] = line.split("[\\t\\s]+");
0 [5 ~6 {" Z: Y6 L& E. {    line = in.readLine();
! Q6 ]  ~2 W9 e! J- K! X    for (int j = 0; j < ySize; j++) {& u: D$ z) L3 w/ [% C
     matrix[i][j] = temp[j];
* q5 S( G. D# S2 S$ b  k* {* D    }
( G2 K" |' j; }2 Z1 V6 t" G* n    i++;; m* H! J, q9 N8 e$ X* i
   }
" h7 {1 B3 K' p& O& w/ `   in.close();7 r5 W0 E7 V1 @2 ]& T6 O
  } catch (IOException ex) {
, W8 d* G3 L! _: s   System.out.println("Error Reading file");
2 P* t# C: ]! {. u9 T6 n! s   ex.printStackTrace();2 [0 s( D- r& A
   System.exit(0);
0 L* O! @1 W5 y# I6 t) O  }
6 P& q" e) Q) t; J }
% ~* x, @' k/ p% C. f* [ public String[][] getMatrix() {
1 M) |/ d) s; }+ M  return matrix;4 O5 g/ v! L2 L' [2 T
}
% l2 L% {: }7 f% [}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-26 08:42 , Processed in 0.015965 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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