设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6598|回复: 1

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

[复制链接]
发表于 2010-3-2 17:00:18 | 显示全部楼层 |阅读模式
package business;
2 l" w) t8 Q* _- ^- m6 {8 b4 ^1 Himport java.io.BufferedReader;6 E- F; _& D# a4 G' g8 u( U
import java.io.FileInputStream;7 X+ D" f) g3 T+ `! a
import java.io.FileNotFoundException;0 b! b/ G. }! C: G0 n( Y# ]6 ~& ^! j! U
import java.io.IOException;
( ?% l0 U! l+ k; f7 y& S; i- t( z8 [import java.io.InputStreamReader;/ L2 t+ i- I9 J+ L  K
import java.io.UnsupportedEncodingException;
6 @2 ~: T! a" t3 [* simport java.util.StringTokenizer;
# M5 F) x; {# v  P' [% tpublic class TXTReader {
3 ]! g6 v# s! U5 w. H protected String matrix[][];( @) b0 S4 U" P7 F8 z
protected int xSize;
) u6 X; H0 K: E9 T; ^- I protected int ySize;
4 [3 e. A+ @; g  { public TXTReader(String sugarFile) {" ]% X/ \! b  P, a9 b
  java.io.InputStream stream = null;
" I" o9 U( S: u8 \4 _  try {
  i- S' g# }; W# Z: F: K: {+ ]: y   stream = new FileInputStream(sugarFile);
8 {7 g/ L+ x/ r( [7 Q+ n9 D8 ^' U  } catch (FileNotFoundException e) {
3 O' F- D5 c3 h8 c9 @+ k3 j   e.printStackTrace();4 _1 M" e2 \+ W; S6 `6 X
  }! f8 ]% {5 m% c+ ?' L
  BufferedReader in = new BufferedReader(new InputStreamReader(stream));2 W1 A4 k0 ]# `! g' `- q1 `
  init(in);
" S1 ]2 @, U; t" ?0 k$ R4 x }7 V; t9 N  w, }* E0 ~% A  T
private void init(BufferedReader in) {
3 t/ [7 I( F! E  try {
7 g0 R) X2 E$ G& [# O   String str = in.readLine();. \' m7 j6 a7 w( \5 J! ^
   if (!str.equals("b2")) {
  H1 H' s9 \- R4 j; U    throw new UnsupportedEncodingException(% ?( S9 {; X& ?& N
      "File is not in TXT ascii format");+ A3 U! f0 R4 c: a& N9 E8 A, t
   }, i% K/ @# W$ O7 e$ u
   str = in.readLine();1 X; d8 M. s8 m; N$ H
   String tem[] = str.split("[\\t\\s]+");
, [! g9 A' P  S   xSize = Integer.valueOf(tem[0]).intValue();
5 Y/ X4 t8 S9 Q0 [4 ~   ySize = Integer.valueOf(tem[1]).intValue();, ?3 o5 m/ M; i8 P! E5 c. D
   matrix = new String[xSize][ySize];# l  Y  t: w" @2 B4 I
   int i = 0;0 d, |$ F( k5 r( h$ N0 T
   str = "";: _% l$ E) W5 q+ D. ^( d
   String line = in.readLine();" g- e# U2 X7 c4 o
   while (line != null) {
% q# L) `1 A' Q& f+ ^7 c    String temp[] = line.split("[\\t\\s]+");
9 I1 i( U6 Y! W8 [2 p    line = in.readLine();
) _4 W9 ^( B& W2 x    for (int j = 0; j < ySize; j++) {; E2 t. ~0 n$ L6 d* H( n/ I
     matrix[i][j] = temp[j];
6 K+ V: J# \7 s5 \- ?4 I4 u    }. B( c+ i; f; f; F8 x
    i++;
/ W- j$ m$ h: R* h! `   }
9 ~5 L* f4 }( B6 p& v1 c   in.close();* ?* {0 ?0 r! T, Z
  } catch (IOException ex) {9 T9 l/ P2 H6 G; [8 e: `7 [
   System.out.println("Error Reading file");
# E! f* b5 |# ^, S: L1 v   ex.printStackTrace();3 z7 K# L1 A, h  h# t0 }* a
   System.exit(0);+ \% Z- k+ x5 F  w8 y
  }+ R4 m: @; U( n* I) k2 M: g2 z
}$ n( P8 ~# i# u2 L* k3 L7 y
public String[][] getMatrix() {0 S) G. b. T. J, ]1 o6 X
  return matrix;, I' Y9 b% t2 \+ v
}% O, z* q& p2 S& l9 Z- }
}
发表于 2010-8-31 08:40:14 | 显示全部楼层
请问楼主,有没有能把repast中的一个变量写入到一个txt文档的程序呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-21 00:11 , Processed in 0.017304 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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