设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7959|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;5 t8 M; M1 Z% x5 B1 M+ `
import java.io.BufferedReader;# C; w- R. d$ T7 v4 M
import java.io.FileInputStream;$ i. ?) o1 k  s1 r) [7 D3 A# ~
import java.io.FileNotFoundException;& q! n  R& ]( `9 _. D& [, A
import java.io.IOException;
. a" F  u! v2 `! ?6 p, h  c, Z" Cimport java.io.InputStreamReader;  c) @2 @: {2 d1 R- Y& F
import java.io.UnsupportedEncodingException;
0 q$ ^% E( A: [4 O2 c7 ]import java.util.StringTokenizer;
" `+ T$ x8 O: _: v  {7 K3 epublic class TXTReader {
7 J$ L% e, _* I: E3 U protected String matrix[][];
( s0 O" W6 F, `$ _6 p3 W protected int xSize;% f. L' Y; O' Y4 l! g- l! o& d
protected int ySize;, q. G0 l2 x+ J! h4 V
public TXTReader(String sugarFile) {7 c2 T( I+ @# `( y
  java.io.InputStream stream = null;
( D2 p' s  Y3 H: Z5 v& H  try {
4 N$ p* w3 E! O' z7 A+ {, M& Q2 r; c   stream = new FileInputStream(sugarFile);* @4 L& y# k" ~
  } catch (FileNotFoundException e) {
* A9 U2 s6 D" O8 i   e.printStackTrace();0 M) Y, r) D" ]  ~, X7 k  k
  }1 j( Z, `* j" ]! v
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));) T& e4 j. m3 ?5 J5 B
  init(in);
: m% l( B  H7 w6 | }
! g% k: l9 k4 ] private void init(BufferedReader in) {
/ [) x% P8 \% ]9 F5 G1 d  try {
" P& D- h* A: Y   String str = in.readLine();
. p' Z8 E( |1 h$ f   if (!str.equals("b2")) {4 r7 J2 p/ ^9 F# }/ u/ I7 |
    throw new UnsupportedEncodingException(
' O! z: r) q4 Q; h4 I      "File is not in TXT ascii format");
9 T8 D, k) {# O/ y' k6 a3 h' y- R0 R   }
5 A7 s( h$ q( I) \+ u% e' W. O   str = in.readLine();
5 x7 B1 d8 m; @* [* r   String tem[] = str.split("[\\t\\s]+");6 [- m! W$ `- [* ~
   xSize = Integer.valueOf(tem[0]).intValue();# V$ B2 ?0 n: L- v2 u
   ySize = Integer.valueOf(tem[1]).intValue();
' `& r# M! ]) O& n# a( u& k   matrix = new String[xSize][ySize];
0 N4 X) o  L$ O& J   int i = 0;
/ I8 _+ |, H9 v- _   str = "";6 S- M5 X; z8 e" ^9 S) E# l
   String line = in.readLine();2 _: P2 O$ b  S
   while (line != null) {
& y# Y+ F5 u8 u8 A( b6 `    String temp[] = line.split("[\\t\\s]+");
! g9 \) X; P! i% U! D* l    line = in.readLine();  }! s6 i" a$ X
    for (int j = 0; j < ySize; j++) {0 O/ C& B4 ]+ D" m9 E
     matrix[i][j] = temp[j];  Z' d4 H7 d3 k' L* E
    }3 e& x. [. Z7 M/ ~  Z  ^  N  K
    i++;
8 @: \3 R6 t; v4 G- q# {; g  V2 @   }
1 P- d, v. ]+ n1 W2 R5 ~" Z8 f) p4 e1 y   in.close();
  o4 p" F! e/ t! b) c1 H, W! T* r  } catch (IOException ex) {
" Q4 \+ C2 d2 o2 x7 ?3 T" T   System.out.println("Error Reading file");
; O5 `0 R) A7 r! h3 G0 k   ex.printStackTrace();
, v9 o% \$ z, u1 S  [6 \1 m   System.exit(0);" I- P' v8 M4 ]9 t+ R' a: u
  }4 x, t! U$ [& H4 ]9 H8 I
}
; ?) @4 c! R* x8 k+ P public String[][] getMatrix() {
$ @; u6 K0 p  `3 _  return matrix;5 G; @* k7 L. u9 q7 b& W
}
$ P: g, I. Q0 ^1 r+ D/ W, t}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-24 10:21 , Processed in 0.675783 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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