设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10267|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;, S8 z; `9 n5 T) o3 w
import java.io.BufferedReader;+ u+ U$ }$ y1 o* c; L; H' o
import java.io.FileInputStream;
3 w( d# Y$ o: Y  x1 }$ Gimport java.io.FileNotFoundException;6 [5 p) k2 k; U# D) ?
import java.io.IOException;; ^+ n! z; L4 U# q
import java.io.InputStreamReader;
! p5 @; A$ y' a( D) A8 Dimport java.io.UnsupportedEncodingException;' J" |4 N% U0 E9 T/ [# y
import java.util.StringTokenizer;# Q# g6 I; w/ i  k$ I' H, P
public class TXTReader {
+ x. T1 M: b3 j! N protected String matrix[][];: J# `8 G$ ]% ^' a7 Z! f
protected int xSize;
* R' w1 \( v& _6 c% l4 A protected int ySize;1 i$ Q" c- b# {" C* I: q1 U
public TXTReader(String sugarFile) {+ h% X8 T/ m4 h4 p. [
  java.io.InputStream stream = null;
. m) r* J1 k# c' a0 F# k# m6 O- E  try {
1 d' i( I, `8 o  Y% b6 U   stream = new FileInputStream(sugarFile);
1 H, \0 U5 K& v  } catch (FileNotFoundException e) {
' N6 t% F) e1 m8 E   e.printStackTrace();4 |% V' ]1 b4 [! ~$ T8 a
  }
3 E  l, k# |: E  BufferedReader in = new BufferedReader(new InputStreamReader(stream));5 S% [) S% C1 u0 Y  |
  init(in);5 T' L8 N. m% F. ^2 C; v. F
}- c2 p5 u% b5 T& |% \* Z
private void init(BufferedReader in) {( C4 P: s. J- T) Y" B
  try {
& M( }& e! o' ]9 j5 x. Y   String str = in.readLine();
8 ]6 k' \% c+ q% d" p5 K. [   if (!str.equals("b2")) {+ A" L8 ]2 P: F0 K5 F8 P4 J
    throw new UnsupportedEncodingException(7 i! T' f0 ?$ E
      "File is not in TXT ascii format");# k# e% k9 y9 h4 T- p; i
   }4 z/ H: J! H2 w" a
   str = in.readLine();5 {* m! b2 Z: W6 ~- T8 a' Y  B8 @, a
   String tem[] = str.split("[\\t\\s]+");
. i/ e% `2 X3 w   xSize = Integer.valueOf(tem[0]).intValue();
! m9 R, z( g6 R   ySize = Integer.valueOf(tem[1]).intValue();
4 Y3 o; O# h, {$ n   matrix = new String[xSize][ySize];3 T3 Q3 e5 K- V4 s; A' I1 c( N
   int i = 0;# l* d( D; ?7 \0 Y" l. |% Y
   str = "";
. V5 a; x1 T# B; G; S  ~5 l5 ^* h   String line = in.readLine();8 j3 v7 q+ D* V/ B, ^
   while (line != null) {
0 m# s, A# t! \    String temp[] = line.split("[\\t\\s]+");. P/ B/ m. \1 u) M* M/ Z5 y
    line = in.readLine();
. J& a, f( i- Z    for (int j = 0; j < ySize; j++) {
' x  K( w* u1 `! o- ^8 t& k     matrix[i][j] = temp[j];
# }3 e: X* j' c5 Q    }' P3 P" d0 g# V$ W
    i++;
  R: X. X, |2 B5 {   }  }8 u. R- |* Y! ^
   in.close();  u5 t: P- h( n1 T, y% l
  } catch (IOException ex) {( h# |' `% W3 |
   System.out.println("Error Reading file");1 x: h* t. K  y  M
   ex.printStackTrace();; N* h8 B/ g: j: h
   System.exit(0);% h. f2 S0 W3 }) s1 i. M
  }
; @7 F1 z1 [* c5 ~5 U) m2 x' f }( D1 s$ d" }) O4 ~
public String[][] getMatrix() {% I! q3 d* R0 ]
  return matrix;
$ O) e$ v& F/ |' b3 i+ w }
* R* Z! |6 G4 O  w# t}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 15:02 , Processed in 0.018058 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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