设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5967|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;3 w- d0 I- d. l6 W; x2 |
import java.io.BufferedReader;1 T! [5 Z: ^2 z" J! t, ~5 D
import java.io.FileInputStream;1 p6 l/ I9 v2 \& |* x) m4 Y, G( s
import java.io.FileNotFoundException;
$ A8 w4 O- b$ C6 M5 |import java.io.IOException;
2 m+ w7 }! _4 I( {6 zimport java.io.InputStreamReader;7 T- z/ h, G) d* e
import java.io.UnsupportedEncodingException;) J# ?7 e  K; q$ I+ |5 i# H" p6 }2 H3 Q
import java.util.StringTokenizer;7 I9 B; B3 @( I! f5 c
public class TXTReader {
9 G7 \- R% [6 `4 g9 P4 x$ [ protected String matrix[][];, r4 D$ q# k1 C' n& J- ]
protected int xSize;6 X* Y. z4 k! L1 o
protected int ySize;
+ a! h/ c  z. a8 j) Y) D2 d8 n/ z public TXTReader(String sugarFile) {0 R8 [% u, L3 o- d
  java.io.InputStream stream = null;
( x8 g- Q$ N/ z' Z7 o  try {! X1 U) M# w$ m, S
   stream = new FileInputStream(sugarFile);
6 _  x; [; o( F# J  } catch (FileNotFoundException e) {) d. {3 x! ?7 ?. ?8 ~) t+ u
   e.printStackTrace();( `) t- c6 b' A5 M6 k4 V
  }% L3 S$ X4 l( @5 b- d) Z: a8 N0 o
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
, @6 ?! j' D5 M  init(in);
- L  b* k! Q; D0 z) @+ ^- Y  k }' A" q0 C3 W3 I, r8 U  Q
private void init(BufferedReader in) {: S) t# x; p! l3 u) d# e! x
  try {
+ i3 M' W3 g! w   String str = in.readLine();1 W: f+ C' O8 _1 a$ s* r$ d
   if (!str.equals("b2")) {6 u  {4 N1 J* k# i: o4 N
    throw new UnsupportedEncodingException(* s. h; U& A3 S- X" ]- r3 U
      "File is not in TXT ascii format");# t+ T0 r7 [2 ?
   }
8 ^7 E- a+ z8 _& p0 }  T: G   str = in.readLine();
9 n* ]/ R6 N. ?- N9 `   String tem[] = str.split("[\\t\\s]+");
% K% s' z7 j8 U6 {$ H! @   xSize = Integer.valueOf(tem[0]).intValue();, p& ~9 E) f- P, t' X  Y
   ySize = Integer.valueOf(tem[1]).intValue();4 M4 V3 M: X* Z
   matrix = new String[xSize][ySize];4 T; [; _( h* M
   int i = 0;
' e4 r# S. m7 o2 j& ?   str = "";
) l8 @) F1 V; I   String line = in.readLine();
" k  E" c% w& g1 Q. P. ~   while (line != null) {
" x% D' R# ~# i    String temp[] = line.split("[\\t\\s]+");
) \. T$ O9 [; K. j% x. J    line = in.readLine();
* M% o  K5 M1 B& i( t7 P! H    for (int j = 0; j < ySize; j++) {* ~# W* s0 d, A7 d: b
     matrix[i][j] = temp[j];0 b' W" G' }* B+ I. y  b1 d6 }- A
    }
0 E, B) m' `1 P% N, g    i++;& |. ^0 F- Q9 M9 @0 D
   }
" U9 z7 H# o; C$ L4 W; {& v   in.close();% p2 I( m( W  g
  } catch (IOException ex) {8 E; \/ r" e4 n/ O6 _8 E: ^) z. ]
   System.out.println("Error Reading file");
- ]2 Q# C" b2 c) i& k5 Q2 Y   ex.printStackTrace();7 w7 P1 H; `; A8 P% l3 ]1 o0 W% @
   System.exit(0);
+ B7 P; X  x/ J( \" f( M; A" O  }
3 b" d% G& {" `+ v" r* f& Y; ? }
4 L( O3 H0 h, L9 @# |0 B public String[][] getMatrix() {) b9 o1 H" w4 P+ ?" D
  return matrix;
. f- e# b* \  \ }
; ]* f2 x( }7 r8 k/ P}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-3 20:28 , Processed in 0.016180 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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