设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8267|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
+ t' }& @" n- Wimport java.io.BufferedReader;
8 L& n* P  T; d6 a' u4 W+ H7 Yimport java.io.FileInputStream;( W) X' z. t$ ^$ J
import java.io.FileNotFoundException;7 M. {1 l1 w& a7 k% I
import java.io.IOException;0 u* o$ G+ g' [1 G
import java.io.InputStreamReader;
$ r; w- C: e7 X* Q/ o8 b( eimport java.io.UnsupportedEncodingException;  i& y! O9 c" H% R) T# d4 D; L
import java.util.StringTokenizer;3 @9 k8 O+ \7 g* }0 _
public class TXTReader {
- ^& ]& U! X( H( q2 k, d protected String matrix[][];" W" G$ j% _9 Y+ j% D, h. ]
protected int xSize;0 s% B5 z/ n* ?2 }9 X
protected int ySize;# |4 l; ~$ |( X/ L  O& {
public TXTReader(String sugarFile) {
8 M. _* V/ c) K* O  java.io.InputStream stream = null;1 w1 t, v8 Y% U  G- ?
  try {6 }+ [. \; Z$ q$ n! L
   stream = new FileInputStream(sugarFile);
5 N. F9 `9 p7 Q9 ~7 T5 }7 k* r  } catch (FileNotFoundException e) {
9 m4 q* g! {$ m1 k7 |   e.printStackTrace();6 ~) N+ c" q, @1 m
  }
. n1 u  T+ o% M/ P" F( z  BufferedReader in = new BufferedReader(new InputStreamReader(stream));
5 w0 E& a% e) Z8 `8 |; G0 S  t8 `5 s  init(in);0 V" u" m. g6 f
}) Y  `5 b$ z6 ]( y* e  Z/ U- @
private void init(BufferedReader in) {) ^6 G- S& k" L& W2 p
  try {  n7 z9 F4 P% y" \$ w
   String str = in.readLine();
  w% \: A7 E, p" i& B8 k, K   if (!str.equals("b2")) {7 q& r/ R9 P  y- e+ K( {
    throw new UnsupportedEncodingException(
# U4 ]" @7 V; y2 \$ _; a      "File is not in TXT ascii format");
3 g* t! t8 ]# i# w/ N* }& W   }0 R, I1 s$ J0 j! S( u
   str = in.readLine();
( y8 I' T$ u4 v4 Z4 z   String tem[] = str.split("[\\t\\s]+");
& f% P! P. F) J1 o! M3 K   xSize = Integer.valueOf(tem[0]).intValue();
. ]8 R* C& Z" y   ySize = Integer.valueOf(tem[1]).intValue();
1 c! y8 ^" Q3 }   matrix = new String[xSize][ySize];
3 A  U, G! {0 j+ F& `   int i = 0;+ A1 n* D% G; W3 U8 N8 x
   str = "";
+ w9 \; R$ Z/ T8 y   String line = in.readLine();
& q0 c. B. k2 L0 j2 P   while (line != null) {- |, `7 V- g- t
    String temp[] = line.split("[\\t\\s]+");, s% d1 ?) G. d$ J2 N
    line = in.readLine();
$ g% n' i& ?" D$ ?; [4 S0 Q    for (int j = 0; j < ySize; j++) {5 _+ Q) n# m+ K* A
     matrix[i][j] = temp[j];: M( N6 g' W6 n5 X0 P( I
    }0 M* d9 ]4 u' a- e$ T, v7 C& X0 a
    i++;* x  I& b* Q/ v) t
   }) u0 Q( t, T* G" G/ o* J% q
   in.close();) a2 w* P, E7 Y
  } catch (IOException ex) {1 q% n% k& j! y  u; k1 ]
   System.out.println("Error Reading file");
8 s5 u; U- Z- m9 L* M9 s3 [' p( R9 ^   ex.printStackTrace();
. d$ @# K* ^2 \1 k5 |/ \   System.exit(0);
) U# G  B8 T9 {0 @  }! K$ m1 R$ \* Z6 Z: z$ q) N6 W
}6 o/ c5 @  R6 G
public String[][] getMatrix() {
9 q+ M. c% l+ K! Y7 J9 `  return matrix;) c! y; M* s- T: l$ O2 C  L
}
0 g4 J( Y0 O. R6 d" ^! `}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-11 12:15 , Processed in 0.019181 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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